TPTP Problem File: ITP058^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP058^1 : TPTP v8.2.0. Released v7.5.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer FLPTheorem problem prob_419__3294834_1
% Version  : Especial.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source   : [Des21]
% Names    : FLPTheorem/prob_419__3294834_1 [Des21]

% Status   : Theorem
% Rating   : 0.20 v8.2.0, 0.23 v8.1.0, 0.27 v7.5.0
% Syntax   : Number of formulae    :  419 ( 161 unt;  77 typ;   0 def)
%            Number of atoms       :  746 ( 494 equ;   0 cnn)
%            Maximal formula atoms :   11 (   2 avg)
%            Number of connectives : 3919 ( 250   ~;  23   |;  75   &;2899   @)
%                                         (   0 <=>; 672  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   23 (   8 avg)
%            Number of types       :   14 (  13 usr)
%            Number of type conns  :  722 ( 722   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   65 (  64 usr;   8 con; 0-4 aty)
%            Number of variables   : 1489 (  22   ^;1374   !;  93   ?;1489   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Sledgehammer 2021-02-23 15:30:48.868
%------------------------------------------------------------------------------
% Could-be-implicit typings (13)
thf(ty_n_t__List__Olist_It__List__Olist_It__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_J_J,type,
    list_l611321411t_unit: $tType ).

thf(ty_n_t__List__Olist_It__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_J,type,
    list_c1059388851t_unit: $tType ).

thf(ty_n_t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    config256849571t_unit: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_J_J,type,
    list_l1619404459ge_p_v: $tType ).

thf(ty_n_t__List__Olist_It__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_J,type,
    list_message_p_v: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_list_nat: $tType ).

thf(ty_n_t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    message_p_v: $tType ).

thf(ty_n_t__AsynchronousSystem__OmessageValue_Itf__v_J,type,
    messageValue_v: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_tf__s,type,
    s: $tType ).

thf(ty_n_tf__p,type,
    p: $tType ).

% Explicit typings (64)
thf(sy_c_FLPTheorem__Mirabelle__bncobrwgic_OflpPseudoConsensus_001tf__p_001tf__s_001tf__v,type,
    fLPThe9398366_p_s_v: ( p > s > messageValue_v > s ) > ( p > s > messageValue_v > message_p_v > nat ) > ( p > s ) > $o ).

thf(sy_c_FLPTheorem__Mirabelle__bncobrwgic_OflpPseudoConsensus_OinfiniteExecutionCfg_001tf__p_001tf__v_001tf__s,type,
    fLPThe1519354920_p_v_s: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > list_c1059388851t_unit ).

thf(sy_c_FLPTheorem__Mirabelle__bncobrwgic_OflpPseudoConsensus_OinfiniteExecutionMsg_001tf__p_001tf__v_001tf__s,type,
    fLPThe536531371_p_v_s: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > list_message_p_v ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_List_Obind_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    bind_c1439720399t_unit: list_c1059388851t_unit > ( config256849571t_unit > list_c1059388851t_unit ) > list_c1059388851t_unit ).

thf(sy_c_List_Obind_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    bind_c246984691ge_p_v: list_c1059388851t_unit > ( config256849571t_unit > list_message_p_v ) > list_message_p_v ).

thf(sy_c_List_Obind_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    bind_m595590011t_unit: list_message_p_v > ( message_p_v > list_c1059388851t_unit ) > list_c1059388851t_unit ).

thf(sy_c_List_Obind_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    bind_m729301831ge_p_v: list_message_p_v > ( message_p_v > list_message_p_v ) > list_message_p_v ).

thf(sy_c_List_Ocount__list_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    count_1396868135t_unit: list_c1059388851t_unit > config256849571t_unit > nat ).

thf(sy_c_List_Ocount__list_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    count_1322329499ge_p_v: list_message_p_v > message_p_v > nat ).

thf(sy_c_List_Ogen__length_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    gen_le193291088t_unit: nat > list_c1059388851t_unit > nat ).

thf(sy_c_List_Ogen__length_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    gen_le697204914ge_p_v: nat > list_message_p_v > nat ).

thf(sy_c_List_Oinsert_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    insert1308755079t_unit: config256849571t_unit > list_c1059388851t_unit > list_c1059388851t_unit ).

thf(sy_c_List_Oinsert_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    insert_message_p_v: message_p_v > list_message_p_v > list_message_p_v ).

thf(sy_c_List_Olist_OCons_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    cons_c1162654829t_unit: config256849571t_unit > list_c1059388851t_unit > list_c1059388851t_unit ).

thf(sy_c_List_Olist_OCons_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    cons_message_p_v: message_p_v > list_message_p_v > list_message_p_v ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_J,type,
    cons_l1083444861t_unit: list_c1059388851t_unit > list_l611321411t_unit > list_l611321411t_unit ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_J,type,
    cons_l233104475ge_p_v: list_message_p_v > list_l1619404459ge_p_v > list_l1619404459ge_p_v ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
    cons_list_nat: list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_ONil_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    nil_co1338500125t_unit: list_c1059388851t_unit ).

thf(sy_c_List_Olist_ONil_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    nil_message_p_v: list_message_p_v ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_J,type,
    nil_li307996205t_unit: list_l611321411t_unit ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_J,type,
    nil_list_message_p_v: list_l1619404459ge_p_v ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
    nil_list_nat: list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist__ex1_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    list_e1598815642t_unit: ( config256849571t_unit > $o ) > list_c1059388851t_unit > $o ).

thf(sy_c_List_Olist__ex1_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    list_ex1_message_p_v: ( message_p_v > $o ) > list_message_p_v > $o ).

thf(sy_c_List_Olistrelp_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    listre990624391t_unit: ( config256849571t_unit > config256849571t_unit > $o ) > list_c1059388851t_unit > list_c1059388851t_unit > $o ).

thf(sy_c_List_Olistrelp_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    listre823101243ge_p_v: ( config256849571t_unit > message_p_v > $o ) > list_c1059388851t_unit > list_message_p_v > $o ).

thf(sy_c_List_Olistrelp_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    listre1171706563t_unit: ( message_p_v > config256849571t_unit > $o ) > list_message_p_v > list_c1059388851t_unit > $o ).

thf(sy_c_List_Olistrelp_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    listre1295695359ge_p_v: ( message_p_v > message_p_v > $o ) > list_message_p_v > list_message_p_v > $o ).

thf(sy_c_List_Omap__tailrec__rev_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    map_ta91747645t_unit: ( config256849571t_unit > config256849571t_unit ) > list_c1059388851t_unit > list_c1059388851t_unit > list_c1059388851t_unit ).

thf(sy_c_List_Omap__tailrec__rev_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    map_ta782801413ge_p_v: ( config256849571t_unit > message_p_v ) > list_c1059388851t_unit > list_message_p_v > list_message_p_v ).

thf(sy_c_List_Omap__tailrec__rev_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    map_ta1131406733t_unit: ( message_p_v > config256849571t_unit ) > list_message_p_v > list_c1059388851t_unit > list_c1059388851t_unit ).

thf(sy_c_List_Omap__tailrec__rev_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    map_ta1016577461ge_p_v: ( message_p_v > message_p_v ) > list_message_p_v > list_message_p_v > list_message_p_v ).

thf(sy_c_List_Omember_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    member1087090632t_unit: list_c1059388851t_unit > config256849571t_unit > $o ).

thf(sy_c_List_Omember_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    member_message_p_v: list_message_p_v > message_p_v > $o ).

thf(sy_c_List_On__lists_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    n_list1987762709t_unit: nat > list_c1059388851t_unit > list_l611321411t_unit ).

thf(sy_c_List_On__lists_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    n_lists_message_p_v: nat > list_message_p_v > list_l1619404459ge_p_v ).

thf(sy_c_List_Onths_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    nths_c890550943t_unit: list_c1059388851t_unit > set_nat > list_c1059388851t_unit ).

thf(sy_c_List_Onths_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    nths_message_p_v: list_message_p_v > set_nat > list_message_p_v ).

thf(sy_c_List_Oord_Olexordp__eq_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    lexord1758866263t_unit: ( config256849571t_unit > config256849571t_unit > $o ) > list_c1059388851t_unit > list_c1059388851t_unit > $o ).

thf(sy_c_List_Oord_Olexordp__eq_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    lexord2101627499ge_p_v: ( message_p_v > message_p_v > $o ) > list_message_p_v > list_message_p_v > $o ).

thf(sy_c_List_Oord__class_Olexordp_001t__Nat__Onat,type,
    ord_lexordp_nat: list_nat > list_nat > $o ).

thf(sy_c_List_Oord__class_Olexordp__eq_001t__Nat__Onat,type,
    ord_lexordp_eq_nat: list_nat > list_nat > $o ).

thf(sy_c_List_Oproduct__lists_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    produc663212148t_unit: list_l611321411t_unit > list_l611321411t_unit ).

thf(sy_c_List_Oproduct__lists_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    produc1505827982ge_p_v: list_l1619404459ge_p_v > list_l1619404459ge_p_v ).

thf(sy_c_List_Osplice_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    splice888123018t_unit: list_c1059388851t_unit > list_c1059388851t_unit > list_c1059388851t_unit ).

thf(sy_c_List_Osplice_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    splice_message_p_v: list_message_p_v > list_message_p_v > list_message_p_v ).

thf(sy_c_List_Osubseqs_001t__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J,type,
    subseq1144048270t_unit: list_c1059388851t_unit > list_l611321411t_unit ).

thf(sy_c_List_Osubseqs_001t__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J,type,
    subseqs_message_p_v: list_message_p_v > list_l1619404459ge_p_v ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Nat__Onat,type,
    semiri1382578993at_nat: nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__AsynchronousSystem__Oconfiguration__Oconfiguration____ext_Itf__p_Mtf__v_Mtf__s_Mt__Product____Type__Ounit_J_J,type,
    size_s1406904903t_unit: list_c1059388851t_unit > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__AsynchronousSystem__Omessage_Itf__p_Mtf__v_J_J,type,
    size_s1168481041ge_p_v: list_message_p_v > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_v_cfg,type,
    cfg: config256849571t_unit ).

thf(sy_v_fStepCfg____,type,
    fStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ).

thf(sy_v_fStepMsg____,type,
    fStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v ).

thf(sy_v_fe____,type,
    fe: nat > list_c1059388851t_unit ).

thf(sy_v_ft____,type,
    ft: nat > list_message_p_v ).

% Relevant facts (341)
thf(fact_0_ft__def,axiom,
    ( ft
    = ( fLPThe536531371_p_v_s @ cfg @ fStepCfg @ fStepMsg ) ) ).

% ft_def
thf(fact_1_fe__def,axiom,
    ( fe
    = ( fLPThe1519354920_p_v_s @ cfg @ fStepCfg @ fStepMsg ) ) ).

% fe_def
thf(fact_2_infiniteExecutionCfg_Osimps_I1_J,axiom,
    ! [Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v] :
      ( ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ zero_zero_nat )
      = ( cons_c1162654829t_unit @ Cfg @ nil_co1338500125t_unit ) ) ).

% infiniteExecutionCfg.simps(1)
thf(fact_3_list_Oinject,axiom,
    ! [X21: list_message_p_v,X22: list_l1619404459ge_p_v,Y21: list_message_p_v,Y22: list_l1619404459ge_p_v] :
      ( ( ( cons_l233104475ge_p_v @ X21 @ X22 )
        = ( cons_l233104475ge_p_v @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_4_list_Oinject,axiom,
    ! [X21: list_c1059388851t_unit,X22: list_l611321411t_unit,Y21: list_c1059388851t_unit,Y22: list_l611321411t_unit] :
      ( ( ( cons_l1083444861t_unit @ X21 @ X22 )
        = ( cons_l1083444861t_unit @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_5_list_Oinject,axiom,
    ! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
      ( ( ( cons_nat @ X21 @ X22 )
        = ( cons_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_6_list_Oinject,axiom,
    ! [X21: message_p_v,X22: list_message_p_v,Y21: message_p_v,Y22: list_message_p_v] :
      ( ( ( cons_message_p_v @ X21 @ X22 )
        = ( cons_message_p_v @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_7_list_Oinject,axiom,
    ! [X21: config256849571t_unit,X22: list_c1059388851t_unit,Y21: config256849571t_unit,Y22: list_c1059388851t_unit] :
      ( ( ( cons_c1162654829t_unit @ X21 @ X22 )
        = ( cons_c1162654829t_unit @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_8_list_Odistinct_I1_J,axiom,
    ! [X21: list_message_p_v,X22: list_l1619404459ge_p_v] :
      ( nil_list_message_p_v
     != ( cons_l233104475ge_p_v @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_9_list_Odistinct_I1_J,axiom,
    ! [X21: list_c1059388851t_unit,X22: list_l611321411t_unit] :
      ( nil_li307996205t_unit
     != ( cons_l1083444861t_unit @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_10_list_Odistinct_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( nil_nat
     != ( cons_nat @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_11_list_Odistinct_I1_J,axiom,
    ! [X21: message_p_v,X22: list_message_p_v] :
      ( nil_message_p_v
     != ( cons_message_p_v @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_12_list_Odistinct_I1_J,axiom,
    ! [X21: config256849571t_unit,X22: list_c1059388851t_unit] :
      ( nil_co1338500125t_unit
     != ( cons_c1162654829t_unit @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_13_list_OdiscI,axiom,
    ! [List: list_l1619404459ge_p_v,X21: list_message_p_v,X22: list_l1619404459ge_p_v] :
      ( ( List
        = ( cons_l233104475ge_p_v @ X21 @ X22 ) )
     => ( List != nil_list_message_p_v ) ) ).

% list.discI
thf(fact_14_list_OdiscI,axiom,
    ! [List: list_l611321411t_unit,X21: list_c1059388851t_unit,X22: list_l611321411t_unit] :
      ( ( List
        = ( cons_l1083444861t_unit @ X21 @ X22 ) )
     => ( List != nil_li307996205t_unit ) ) ).

% list.discI
thf(fact_15_list_OdiscI,axiom,
    ! [List: list_nat,X21: nat,X22: list_nat] :
      ( ( List
        = ( cons_nat @ X21 @ X22 ) )
     => ( List != nil_nat ) ) ).

% list.discI
thf(fact_16_list_OdiscI,axiom,
    ! [List: list_message_p_v,X21: message_p_v,X22: list_message_p_v] :
      ( ( List
        = ( cons_message_p_v @ X21 @ X22 ) )
     => ( List != nil_message_p_v ) ) ).

% list.discI
thf(fact_17_list_OdiscI,axiom,
    ! [List: list_c1059388851t_unit,X21: config256849571t_unit,X22: list_c1059388851t_unit] :
      ( ( List
        = ( cons_c1162654829t_unit @ X21 @ X22 ) )
     => ( List != nil_co1338500125t_unit ) ) ).

% list.discI
thf(fact_18_list_Oexhaust,axiom,
    ! [Y: list_l1619404459ge_p_v] :
      ( ( Y != nil_list_message_p_v )
     => ~ ! [X212: list_message_p_v,X222: list_l1619404459ge_p_v] :
            ( Y
           != ( cons_l233104475ge_p_v @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_19_list_Oexhaust,axiom,
    ! [Y: list_l611321411t_unit] :
      ( ( Y != nil_li307996205t_unit )
     => ~ ! [X212: list_c1059388851t_unit,X222: list_l611321411t_unit] :
            ( Y
           != ( cons_l1083444861t_unit @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_20_list_Oexhaust,axiom,
    ! [Y: list_nat] :
      ( ( Y != nil_nat )
     => ~ ! [X212: nat,X222: list_nat] :
            ( Y
           != ( cons_nat @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_21_list_Oexhaust,axiom,
    ! [Y: list_message_p_v] :
      ( ( Y != nil_message_p_v )
     => ~ ! [X212: message_p_v,X222: list_message_p_v] :
            ( Y
           != ( cons_message_p_v @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_22_list_Oexhaust,axiom,
    ! [Y: list_c1059388851t_unit] :
      ( ( Y != nil_co1338500125t_unit )
     => ~ ! [X212: config256849571t_unit,X222: list_c1059388851t_unit] :
            ( Y
           != ( cons_c1162654829t_unit @ X212 @ X222 ) ) ) ).

% list.exhaust
thf(fact_23_list_Oinducts,axiom,
    ! [P: list_l1619404459ge_p_v > $o,List: list_l1619404459ge_p_v] :
      ( ( P @ nil_list_message_p_v )
     => ( ! [X1: list_message_p_v,X2: list_l1619404459ge_p_v] :
            ( ( P @ X2 )
           => ( P @ ( cons_l233104475ge_p_v @ X1 @ X2 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_24_list_Oinducts,axiom,
    ! [P: list_l611321411t_unit > $o,List: list_l611321411t_unit] :
      ( ( P @ nil_li307996205t_unit )
     => ( ! [X1: list_c1059388851t_unit,X2: list_l611321411t_unit] :
            ( ( P @ X2 )
           => ( P @ ( cons_l1083444861t_unit @ X1 @ X2 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_25_list_Oinducts,axiom,
    ! [P: list_nat > $o,List: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X1: nat,X2: list_nat] :
            ( ( P @ X2 )
           => ( P @ ( cons_nat @ X1 @ X2 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_26_list_Oinducts,axiom,
    ! [P: list_message_p_v > $o,List: list_message_p_v] :
      ( ( P @ nil_message_p_v )
     => ( ! [X1: message_p_v,X2: list_message_p_v] :
            ( ( P @ X2 )
           => ( P @ ( cons_message_p_v @ X1 @ X2 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_27_list_Oinducts,axiom,
    ! [P: list_c1059388851t_unit > $o,List: list_c1059388851t_unit] :
      ( ( P @ nil_co1338500125t_unit )
     => ( ! [X1: config256849571t_unit,X2: list_c1059388851t_unit] :
            ( ( P @ X2 )
           => ( P @ ( cons_c1162654829t_unit @ X1 @ X2 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_28_neq__Nil__conv,axiom,
    ! [Xs: list_l1619404459ge_p_v] :
      ( ( Xs != nil_list_message_p_v )
      = ( ? [Y2: list_message_p_v,Ys: list_l1619404459ge_p_v] :
            ( Xs
            = ( cons_l233104475ge_p_v @ Y2 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_29_neq__Nil__conv,axiom,
    ! [Xs: list_l611321411t_unit] :
      ( ( Xs != nil_li307996205t_unit )
      = ( ? [Y2: list_c1059388851t_unit,Ys: list_l611321411t_unit] :
            ( Xs
            = ( cons_l1083444861t_unit @ Y2 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_30_neq__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
      = ( ? [Y2: nat,Ys: list_nat] :
            ( Xs
            = ( cons_nat @ Y2 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_31_neq__Nil__conv,axiom,
    ! [Xs: list_message_p_v] :
      ( ( Xs != nil_message_p_v )
      = ( ? [Y2: message_p_v,Ys: list_message_p_v] :
            ( Xs
            = ( cons_message_p_v @ Y2 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_32_neq__Nil__conv,axiom,
    ! [Xs: list_c1059388851t_unit] :
      ( ( Xs != nil_co1338500125t_unit )
      = ( ? [Y2: config256849571t_unit,Ys: list_c1059388851t_unit] :
            ( Xs
            = ( cons_c1162654829t_unit @ Y2 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_33_list__induct2_H,axiom,
    ! [P: list_message_p_v > list_message_p_v > $o,Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ( P @ nil_message_p_v @ nil_message_p_v )
     => ( ! [X: message_p_v,Xs2: list_message_p_v] : ( P @ ( cons_message_p_v @ X @ Xs2 ) @ nil_message_p_v )
       => ( ! [Y3: message_p_v,Ys3: list_message_p_v] : ( P @ nil_message_p_v @ ( cons_message_p_v @ Y3 @ Ys3 ) )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: message_p_v,Ys3: list_message_p_v] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_34_list__induct2_H,axiom,
    ! [P: list_c1059388851t_unit > list_message_p_v > $o,Xs: list_c1059388851t_unit,Ys2: list_message_p_v] :
      ( ( P @ nil_co1338500125t_unit @ nil_message_p_v )
     => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ nil_message_p_v )
       => ( ! [Y3: message_p_v,Ys3: list_message_p_v] : ( P @ nil_co1338500125t_unit @ ( cons_message_p_v @ Y3 @ Ys3 ) )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: message_p_v,Ys3: list_message_p_v] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_35_list__induct2_H,axiom,
    ! [P: list_message_p_v > list_c1059388851t_unit > $o,Xs: list_message_p_v,Ys2: list_c1059388851t_unit] :
      ( ( P @ nil_message_p_v @ nil_co1338500125t_unit )
     => ( ! [X: message_p_v,Xs2: list_message_p_v] : ( P @ ( cons_message_p_v @ X @ Xs2 ) @ nil_co1338500125t_unit )
       => ( ! [Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] : ( P @ nil_message_p_v @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_36_list__induct2_H,axiom,
    ! [P: list_c1059388851t_unit > list_c1059388851t_unit > $o,Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ( P @ nil_co1338500125t_unit @ nil_co1338500125t_unit )
     => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ nil_co1338500125t_unit )
       => ( ! [Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] : ( P @ nil_co1338500125t_unit @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_37_list__induct2_H,axiom,
    ! [P: list_nat > list_nat > $o,Xs: list_nat,Ys2: list_nat] :
      ( ( P @ nil_nat @ nil_nat )
     => ( ! [X: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_38_list__induct2_H,axiom,
    ! [P: list_message_p_v > list_nat > $o,Xs: list_message_p_v,Ys2: list_nat] :
      ( ( P @ nil_message_p_v @ nil_nat )
     => ( ! [X: message_p_v,Xs2: list_message_p_v] : ( P @ ( cons_message_p_v @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_message_p_v @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_39_list__induct2_H,axiom,
    ! [P: list_nat > list_message_p_v > $o,Xs: list_nat,Ys2: list_message_p_v] :
      ( ( P @ nil_nat @ nil_message_p_v )
     => ( ! [X: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X @ Xs2 ) @ nil_message_p_v )
       => ( ! [Y3: message_p_v,Ys3: list_message_p_v] : ( P @ nil_nat @ ( cons_message_p_v @ Y3 @ Ys3 ) )
         => ( ! [X: nat,Xs2: list_nat,Y3: message_p_v,Ys3: list_message_p_v] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_40_list__induct2_H,axiom,
    ! [P: list_l1619404459ge_p_v > list_nat > $o,Xs: list_l1619404459ge_p_v,Ys2: list_nat] :
      ( ( P @ nil_list_message_p_v @ nil_nat )
     => ( ! [X: list_message_p_v,Xs2: list_l1619404459ge_p_v] : ( P @ ( cons_l233104475ge_p_v @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_list_message_p_v @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X: list_message_p_v,Xs2: list_l1619404459ge_p_v,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_l233104475ge_p_v @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_41_list__induct2_H,axiom,
    ! [P: list_nat > list_l1619404459ge_p_v > $o,Xs: list_nat,Ys2: list_l1619404459ge_p_v] :
      ( ( P @ nil_nat @ nil_list_message_p_v )
     => ( ! [X: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X @ Xs2 ) @ nil_list_message_p_v )
       => ( ! [Y3: list_message_p_v,Ys3: list_l1619404459ge_p_v] : ( P @ nil_nat @ ( cons_l233104475ge_p_v @ Y3 @ Ys3 ) )
         => ( ! [X: nat,Xs2: list_nat,Y3: list_message_p_v,Ys3: list_l1619404459ge_p_v] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_l233104475ge_p_v @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_42_list__induct2_H,axiom,
    ! [P: list_c1059388851t_unit > list_nat > $o,Xs: list_c1059388851t_unit,Ys2: list_nat] :
      ( ( P @ nil_co1338500125t_unit @ nil_nat )
     => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_co1338500125t_unit @ ( cons_nat @ Y3 @ Ys3 ) )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: nat,Ys3: list_nat] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_43_splice_Oinduct,axiom,
    ! [P: list_l1619404459ge_p_v > list_l1619404459ge_p_v > $o,A0: list_l1619404459ge_p_v,A1: list_l1619404459ge_p_v] :
      ( ! [X_1: list_l1619404459ge_p_v] : ( P @ nil_list_message_p_v @ X_1 )
     => ( ! [X: list_message_p_v,Xs2: list_l1619404459ge_p_v,Ys3: list_l1619404459ge_p_v] :
            ( ( P @ Ys3 @ Xs2 )
           => ( P @ ( cons_l233104475ge_p_v @ X @ Xs2 ) @ Ys3 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_44_splice_Oinduct,axiom,
    ! [P: list_l611321411t_unit > list_l611321411t_unit > $o,A0: list_l611321411t_unit,A1: list_l611321411t_unit] :
      ( ! [X_1: list_l611321411t_unit] : ( P @ nil_li307996205t_unit @ X_1 )
     => ( ! [X: list_c1059388851t_unit,Xs2: list_l611321411t_unit,Ys3: list_l611321411t_unit] :
            ( ( P @ Ys3 @ Xs2 )
           => ( P @ ( cons_l1083444861t_unit @ X @ Xs2 ) @ Ys3 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_45_splice_Oinduct,axiom,
    ! [P: list_nat > list_nat > $o,A0: list_nat,A1: list_nat] :
      ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
     => ( ! [X: nat,Xs2: list_nat,Ys3: list_nat] :
            ( ( P @ Ys3 @ Xs2 )
           => ( P @ ( cons_nat @ X @ Xs2 ) @ Ys3 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_46_splice_Oinduct,axiom,
    ! [P: list_c1059388851t_unit > list_c1059388851t_unit > $o,A0: list_c1059388851t_unit,A1: list_c1059388851t_unit] :
      ( ! [X_1: list_c1059388851t_unit] : ( P @ nil_co1338500125t_unit @ X_1 )
     => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Ys3: list_c1059388851t_unit] :
            ( ( P @ Ys3 @ Xs2 )
           => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ Ys3 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_47_splice_Oinduct,axiom,
    ! [P: list_message_p_v > list_message_p_v > $o,A0: list_message_p_v,A1: list_message_p_v] :
      ( ! [X_1: list_message_p_v] : ( P @ nil_message_p_v @ X_1 )
     => ( ! [X: message_p_v,Xs2: list_message_p_v,Ys3: list_message_p_v] :
            ( ( P @ Ys3 @ Xs2 )
           => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ Ys3 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_48_induct__list012,axiom,
    ! [P: list_l1619404459ge_p_v > $o,Xs: list_l1619404459ge_p_v] :
      ( ( P @ nil_list_message_p_v )
     => ( ! [X: list_message_p_v] : ( P @ ( cons_l233104475ge_p_v @ X @ nil_list_message_p_v ) )
       => ( ! [X: list_message_p_v,Y3: list_message_p_v,Zs: list_l1619404459ge_p_v] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_l233104475ge_p_v @ Y3 @ Zs ) )
               => ( P @ ( cons_l233104475ge_p_v @ X @ ( cons_l233104475ge_p_v @ Y3 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_49_induct__list012,axiom,
    ! [P: list_l611321411t_unit > $o,Xs: list_l611321411t_unit] :
      ( ( P @ nil_li307996205t_unit )
     => ( ! [X: list_c1059388851t_unit] : ( P @ ( cons_l1083444861t_unit @ X @ nil_li307996205t_unit ) )
       => ( ! [X: list_c1059388851t_unit,Y3: list_c1059388851t_unit,Zs: list_l611321411t_unit] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_l1083444861t_unit @ Y3 @ Zs ) )
               => ( P @ ( cons_l1083444861t_unit @ X @ ( cons_l1083444861t_unit @ Y3 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_50_induct__list012,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Y3: nat,Zs: list_nat] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_nat @ Y3 @ Zs ) )
               => ( P @ ( cons_nat @ X @ ( cons_nat @ Y3 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_51_induct__list012,axiom,
    ! [P: list_c1059388851t_unit > $o,Xs: list_c1059388851t_unit] :
      ( ( P @ nil_co1338500125t_unit )
     => ( ! [X: config256849571t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ nil_co1338500125t_unit ) )
       => ( ! [X: config256849571t_unit,Y3: config256849571t_unit,Zs: list_c1059388851t_unit] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_c1162654829t_unit @ Y3 @ Zs ) )
               => ( P @ ( cons_c1162654829t_unit @ X @ ( cons_c1162654829t_unit @ Y3 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_52_induct__list012,axiom,
    ! [P: list_message_p_v > $o,Xs: list_message_p_v] :
      ( ( P @ nil_message_p_v )
     => ( ! [X: message_p_v] : ( P @ ( cons_message_p_v @ X @ nil_message_p_v ) )
       => ( ! [X: message_p_v,Y3: message_p_v,Zs: list_message_p_v] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_message_p_v @ Y3 @ Zs ) )
               => ( P @ ( cons_message_p_v @ X @ ( cons_message_p_v @ Y3 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_53_min__list_Ocases,axiom,
    ! [X3: list_nat] :
      ( ! [X: nat,Xs2: list_nat] :
          ( X3
         != ( cons_nat @ X @ Xs2 ) )
     => ( X3 = nil_nat ) ) ).

% min_list.cases
thf(fact_54_min__list_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ! [X: nat,Xs2: list_nat] :
          ( ! [X213: nat,X223: list_nat] :
              ( ( Xs2
                = ( cons_nat @ X213 @ X223 ) )
             => ( P @ Xs2 ) )
         => ( P @ ( cons_nat @ X @ Xs2 ) ) )
     => ( ( P @ nil_nat )
       => ( P @ A0 ) ) ) ).

% min_list.induct
thf(fact_55_infiniteExecutionMsg_Osimps_I1_J,axiom,
    ! [Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v] :
      ( ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ zero_zero_nat )
      = nil_message_p_v ) ).

% infiniteExecutionMsg.simps(1)
thf(fact_56_zero__reorient,axiom,
    ! [X3: nat] :
      ( ( zero_zero_nat = X3 )
      = ( X3 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_57_not__Cons__self2,axiom,
    ! [X3: list_message_p_v,Xs: list_l1619404459ge_p_v] :
      ( ( cons_l233104475ge_p_v @ X3 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_58_not__Cons__self2,axiom,
    ! [X3: list_c1059388851t_unit,Xs: list_l611321411t_unit] :
      ( ( cons_l1083444861t_unit @ X3 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_59_not__Cons__self2,axiom,
    ! [X3: nat,Xs: list_nat] :
      ( ( cons_nat @ X3 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_60_not__Cons__self2,axiom,
    ! [X3: config256849571t_unit,Xs: list_c1059388851t_unit] :
      ( ( cons_c1162654829t_unit @ X3 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_61_not__Cons__self2,axiom,
    ! [X3: message_p_v,Xs: list_message_p_v] :
      ( ( cons_message_p_v @ X3 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_62_strict__sorted_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat,Ys3: list_nat] :
            ( ( P @ Ys3 )
           => ( P @ ( cons_nat @ X @ Ys3 ) ) )
       => ( P @ A0 ) ) ) ).

% strict_sorted.induct
thf(fact_63_strict__sorted_Ocases,axiom,
    ! [X3: list_nat] :
      ( ( X3 != nil_nat )
     => ~ ! [X: nat,Ys3: list_nat] :
            ( X3
           != ( cons_nat @ X @ Ys3 ) ) ) ).

% strict_sorted.cases
thf(fact_64_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( message_p_v > message_p_v ) > list_message_p_v > list_message_p_v > $o,A0: message_p_v > message_p_v,A1: list_message_p_v,A2: list_message_p_v] :
      ( ! [F: message_p_v > message_p_v,X_1: list_message_p_v] : ( P @ F @ nil_message_p_v @ X_1 )
     => ( ! [F: message_p_v > message_p_v,A: message_p_v,As: list_message_p_v,Bs: list_message_p_v] :
            ( ( P @ F @ As @ ( cons_message_p_v @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_message_p_v @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_65_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( message_p_v > config256849571t_unit ) > list_message_p_v > list_c1059388851t_unit > $o,A0: message_p_v > config256849571t_unit,A1: list_message_p_v,A2: list_c1059388851t_unit] :
      ( ! [F: message_p_v > config256849571t_unit,X_1: list_c1059388851t_unit] : ( P @ F @ nil_message_p_v @ X_1 )
     => ( ! [F: message_p_v > config256849571t_unit,A: message_p_v,As: list_message_p_v,Bs: list_c1059388851t_unit] :
            ( ( P @ F @ As @ ( cons_c1162654829t_unit @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_message_p_v @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_66_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( config256849571t_unit > message_p_v ) > list_c1059388851t_unit > list_message_p_v > $o,A0: config256849571t_unit > message_p_v,A1: list_c1059388851t_unit,A2: list_message_p_v] :
      ( ! [F: config256849571t_unit > message_p_v,X_1: list_message_p_v] : ( P @ F @ nil_co1338500125t_unit @ X_1 )
     => ( ! [F: config256849571t_unit > message_p_v,A: config256849571t_unit,As: list_c1059388851t_unit,Bs: list_message_p_v] :
            ( ( P @ F @ As @ ( cons_message_p_v @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_c1162654829t_unit @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_67_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( config256849571t_unit > config256849571t_unit ) > list_c1059388851t_unit > list_c1059388851t_unit > $o,A0: config256849571t_unit > config256849571t_unit,A1: list_c1059388851t_unit,A2: list_c1059388851t_unit] :
      ( ! [F: config256849571t_unit > config256849571t_unit,X_1: list_c1059388851t_unit] : ( P @ F @ nil_co1338500125t_unit @ X_1 )
     => ( ! [F: config256849571t_unit > config256849571t_unit,A: config256849571t_unit,As: list_c1059388851t_unit,Bs: list_c1059388851t_unit] :
            ( ( P @ F @ As @ ( cons_c1162654829t_unit @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_c1162654829t_unit @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_68_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > nat ) > list_nat > list_nat > $o,A0: nat > nat,A1: list_nat,A2: list_nat] :
      ( ! [F: nat > nat,X_1: list_nat] : ( P @ F @ nil_nat @ X_1 )
     => ( ! [F: nat > nat,A: nat,As: list_nat,Bs: list_nat] :
            ( ( P @ F @ As @ ( cons_nat @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_nat @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_69_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > message_p_v ) > list_nat > list_message_p_v > $o,A0: nat > message_p_v,A1: list_nat,A2: list_message_p_v] :
      ( ! [F: nat > message_p_v,X_1: list_message_p_v] : ( P @ F @ nil_nat @ X_1 )
     => ( ! [F: nat > message_p_v,A: nat,As: list_nat,Bs: list_message_p_v] :
            ( ( P @ F @ As @ ( cons_message_p_v @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_nat @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_70_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( message_p_v > nat ) > list_message_p_v > list_nat > $o,A0: message_p_v > nat,A1: list_message_p_v,A2: list_nat] :
      ( ! [F: message_p_v > nat,X_1: list_nat] : ( P @ F @ nil_message_p_v @ X_1 )
     => ( ! [F: message_p_v > nat,A: message_p_v,As: list_message_p_v,Bs: list_nat] :
            ( ( P @ F @ As @ ( cons_nat @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_message_p_v @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_71_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > list_message_p_v ) > list_nat > list_l1619404459ge_p_v > $o,A0: nat > list_message_p_v,A1: list_nat,A2: list_l1619404459ge_p_v] :
      ( ! [F: nat > list_message_p_v,X_1: list_l1619404459ge_p_v] : ( P @ F @ nil_nat @ X_1 )
     => ( ! [F: nat > list_message_p_v,A: nat,As: list_nat,Bs: list_l1619404459ge_p_v] :
            ( ( P @ F @ As @ ( cons_l233104475ge_p_v @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_nat @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_72_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( list_message_p_v > nat ) > list_l1619404459ge_p_v > list_nat > $o,A0: list_message_p_v > nat,A1: list_l1619404459ge_p_v,A2: list_nat] :
      ( ! [F: list_message_p_v > nat,X_1: list_nat] : ( P @ F @ nil_list_message_p_v @ X_1 )
     => ( ! [F: list_message_p_v > nat,A: list_message_p_v,As: list_l1619404459ge_p_v,Bs: list_nat] :
            ( ( P @ F @ As @ ( cons_nat @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_l233104475ge_p_v @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_73_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > config256849571t_unit ) > list_nat > list_c1059388851t_unit > $o,A0: nat > config256849571t_unit,A1: list_nat,A2: list_c1059388851t_unit] :
      ( ! [F: nat > config256849571t_unit,X_1: list_c1059388851t_unit] : ( P @ F @ nil_nat @ X_1 )
     => ( ! [F: nat > config256849571t_unit,A: nat,As: list_nat,Bs: list_c1059388851t_unit] :
            ( ( P @ F @ As @ ( cons_c1162654829t_unit @ ( F @ A ) @ Bs ) )
           => ( P @ F @ ( cons_nat @ A @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_74_list__nonempty__induct,axiom,
    ! [Xs: list_l1619404459ge_p_v,P: list_l1619404459ge_p_v > $o] :
      ( ( Xs != nil_list_message_p_v )
     => ( ! [X: list_message_p_v] : ( P @ ( cons_l233104475ge_p_v @ X @ nil_list_message_p_v ) )
       => ( ! [X: list_message_p_v,Xs2: list_l1619404459ge_p_v] :
              ( ( Xs2 != nil_list_message_p_v )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_l233104475ge_p_v @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_75_list__nonempty__induct,axiom,
    ! [Xs: list_l611321411t_unit,P: list_l611321411t_unit > $o] :
      ( ( Xs != nil_li307996205t_unit )
     => ( ! [X: list_c1059388851t_unit] : ( P @ ( cons_l1083444861t_unit @ X @ nil_li307996205t_unit ) )
       => ( ! [X: list_c1059388851t_unit,Xs2: list_l611321411t_unit] :
              ( ( Xs2 != nil_li307996205t_unit )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_l1083444861t_unit @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_76_list__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_77_list__nonempty__induct,axiom,
    ! [Xs: list_c1059388851t_unit,P: list_c1059388851t_unit > $o] :
      ( ( Xs != nil_co1338500125t_unit )
     => ( ! [X: config256849571t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ nil_co1338500125t_unit ) )
       => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( ( Xs2 != nil_co1338500125t_unit )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_78_list__nonempty__induct,axiom,
    ! [Xs: list_message_p_v,P: list_message_p_v > $o] :
      ( ( Xs != nil_message_p_v )
     => ( ! [X: message_p_v] : ( P @ ( cons_message_p_v @ X @ nil_message_p_v ) )
       => ( ! [X: message_p_v,Xs2: list_message_p_v] :
              ( ( Xs2 != nil_message_p_v )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_79_successively_Oinduct,axiom,
    ! [P: ( list_message_p_v > list_message_p_v > $o ) > list_l1619404459ge_p_v > $o,A0: list_message_p_v > list_message_p_v > $o,A1: list_l1619404459ge_p_v] :
      ( ! [P2: list_message_p_v > list_message_p_v > $o] : ( P @ P2 @ nil_list_message_p_v )
     => ( ! [P2: list_message_p_v > list_message_p_v > $o,X: list_message_p_v] : ( P @ P2 @ ( cons_l233104475ge_p_v @ X @ nil_list_message_p_v ) )
       => ( ! [P2: list_message_p_v > list_message_p_v > $o,X: list_message_p_v,Y3: list_message_p_v,Xs2: list_l1619404459ge_p_v] :
              ( ( P @ P2 @ ( cons_l233104475ge_p_v @ Y3 @ Xs2 ) )
             => ( P @ P2 @ ( cons_l233104475ge_p_v @ X @ ( cons_l233104475ge_p_v @ Y3 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_80_successively_Oinduct,axiom,
    ! [P: ( list_c1059388851t_unit > list_c1059388851t_unit > $o ) > list_l611321411t_unit > $o,A0: list_c1059388851t_unit > list_c1059388851t_unit > $o,A1: list_l611321411t_unit] :
      ( ! [P2: list_c1059388851t_unit > list_c1059388851t_unit > $o] : ( P @ P2 @ nil_li307996205t_unit )
     => ( ! [P2: list_c1059388851t_unit > list_c1059388851t_unit > $o,X: list_c1059388851t_unit] : ( P @ P2 @ ( cons_l1083444861t_unit @ X @ nil_li307996205t_unit ) )
       => ( ! [P2: list_c1059388851t_unit > list_c1059388851t_unit > $o,X: list_c1059388851t_unit,Y3: list_c1059388851t_unit,Xs2: list_l611321411t_unit] :
              ( ( P @ P2 @ ( cons_l1083444861t_unit @ Y3 @ Xs2 ) )
             => ( P @ P2 @ ( cons_l1083444861t_unit @ X @ ( cons_l1083444861t_unit @ Y3 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_81_successively_Oinduct,axiom,
    ! [P: ( nat > nat > $o ) > list_nat > $o,A0: nat > nat > $o,A1: list_nat] :
      ( ! [P2: nat > nat > $o] : ( P @ P2 @ nil_nat )
     => ( ! [P2: nat > nat > $o,X: nat] : ( P @ P2 @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [P2: nat > nat > $o,X: nat,Y3: nat,Xs2: list_nat] :
              ( ( P @ P2 @ ( cons_nat @ Y3 @ Xs2 ) )
             => ( P @ P2 @ ( cons_nat @ X @ ( cons_nat @ Y3 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_82_successively_Oinduct,axiom,
    ! [P: ( config256849571t_unit > config256849571t_unit > $o ) > list_c1059388851t_unit > $o,A0: config256849571t_unit > config256849571t_unit > $o,A1: list_c1059388851t_unit] :
      ( ! [P2: config256849571t_unit > config256849571t_unit > $o] : ( P @ P2 @ nil_co1338500125t_unit )
     => ( ! [P2: config256849571t_unit > config256849571t_unit > $o,X: config256849571t_unit] : ( P @ P2 @ ( cons_c1162654829t_unit @ X @ nil_co1338500125t_unit ) )
       => ( ! [P2: config256849571t_unit > config256849571t_unit > $o,X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( ( P @ P2 @ ( cons_c1162654829t_unit @ Y3 @ Xs2 ) )
             => ( P @ P2 @ ( cons_c1162654829t_unit @ X @ ( cons_c1162654829t_unit @ Y3 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_83_successively_Oinduct,axiom,
    ! [P: ( message_p_v > message_p_v > $o ) > list_message_p_v > $o,A0: message_p_v > message_p_v > $o,A1: list_message_p_v] :
      ( ! [P2: message_p_v > message_p_v > $o] : ( P @ P2 @ nil_message_p_v )
     => ( ! [P2: message_p_v > message_p_v > $o,X: message_p_v] : ( P @ P2 @ ( cons_message_p_v @ X @ nil_message_p_v ) )
       => ( ! [P2: message_p_v > message_p_v > $o,X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v] :
              ( ( P @ P2 @ ( cons_message_p_v @ Y3 @ Xs2 ) )
             => ( P @ P2 @ ( cons_message_p_v @ X @ ( cons_message_p_v @ Y3 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_84_remdups__adj_Oinduct,axiom,
    ! [P: list_l1619404459ge_p_v > $o,A0: list_l1619404459ge_p_v] :
      ( ( P @ nil_list_message_p_v )
     => ( ! [X: list_message_p_v] : ( P @ ( cons_l233104475ge_p_v @ X @ nil_list_message_p_v ) )
       => ( ! [X: list_message_p_v,Y3: list_message_p_v,Xs2: list_l1619404459ge_p_v] :
              ( ( ( X = Y3 )
               => ( P @ ( cons_l233104475ge_p_v @ X @ Xs2 ) ) )
             => ( ( ( X != Y3 )
                 => ( P @ ( cons_l233104475ge_p_v @ Y3 @ Xs2 ) ) )
               => ( P @ ( cons_l233104475ge_p_v @ X @ ( cons_l233104475ge_p_v @ Y3 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_85_remdups__adj_Oinduct,axiom,
    ! [P: list_l611321411t_unit > $o,A0: list_l611321411t_unit] :
      ( ( P @ nil_li307996205t_unit )
     => ( ! [X: list_c1059388851t_unit] : ( P @ ( cons_l1083444861t_unit @ X @ nil_li307996205t_unit ) )
       => ( ! [X: list_c1059388851t_unit,Y3: list_c1059388851t_unit,Xs2: list_l611321411t_unit] :
              ( ( ( X = Y3 )
               => ( P @ ( cons_l1083444861t_unit @ X @ Xs2 ) ) )
             => ( ( ( X != Y3 )
                 => ( P @ ( cons_l1083444861t_unit @ Y3 @ Xs2 ) ) )
               => ( P @ ( cons_l1083444861t_unit @ X @ ( cons_l1083444861t_unit @ Y3 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_86_remdups__adj_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Y3: nat,Xs2: list_nat] :
              ( ( ( X = Y3 )
               => ( P @ ( cons_nat @ X @ Xs2 ) ) )
             => ( ( ( X != Y3 )
                 => ( P @ ( cons_nat @ Y3 @ Xs2 ) ) )
               => ( P @ ( cons_nat @ X @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_87_remdups__adj_Oinduct,axiom,
    ! [P: list_c1059388851t_unit > $o,A0: list_c1059388851t_unit] :
      ( ( P @ nil_co1338500125t_unit )
     => ( ! [X: config256849571t_unit] : ( P @ ( cons_c1162654829t_unit @ X @ nil_co1338500125t_unit ) )
       => ( ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( ( ( X = Y3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) ) )
             => ( ( ( X != Y3 )
                 => ( P @ ( cons_c1162654829t_unit @ Y3 @ Xs2 ) ) )
               => ( P @ ( cons_c1162654829t_unit @ X @ ( cons_c1162654829t_unit @ Y3 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_88_remdups__adj_Oinduct,axiom,
    ! [P: list_message_p_v > $o,A0: list_message_p_v] :
      ( ( P @ nil_message_p_v )
     => ( ! [X: message_p_v] : ( P @ ( cons_message_p_v @ X @ nil_message_p_v ) )
       => ( ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v] :
              ( ( ( X = Y3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) ) )
             => ( ( ( X != Y3 )
                 => ( P @ ( cons_message_p_v @ Y3 @ Xs2 ) ) )
               => ( P @ ( cons_message_p_v @ X @ ( cons_message_p_v @ Y3 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_89_sorted__wrt_Oinduct,axiom,
    ! [P: ( list_message_p_v > list_message_p_v > $o ) > list_l1619404459ge_p_v > $o,A0: list_message_p_v > list_message_p_v > $o,A1: list_l1619404459ge_p_v] :
      ( ! [P2: list_message_p_v > list_message_p_v > $o] : ( P @ P2 @ nil_list_message_p_v )
     => ( ! [P2: list_message_p_v > list_message_p_v > $o,X: list_message_p_v,Ys3: list_l1619404459ge_p_v] :
            ( ( P @ P2 @ Ys3 )
           => ( P @ P2 @ ( cons_l233104475ge_p_v @ X @ Ys3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_90_sorted__wrt_Oinduct,axiom,
    ! [P: ( list_c1059388851t_unit > list_c1059388851t_unit > $o ) > list_l611321411t_unit > $o,A0: list_c1059388851t_unit > list_c1059388851t_unit > $o,A1: list_l611321411t_unit] :
      ( ! [P2: list_c1059388851t_unit > list_c1059388851t_unit > $o] : ( P @ P2 @ nil_li307996205t_unit )
     => ( ! [P2: list_c1059388851t_unit > list_c1059388851t_unit > $o,X: list_c1059388851t_unit,Ys3: list_l611321411t_unit] :
            ( ( P @ P2 @ Ys3 )
           => ( P @ P2 @ ( cons_l1083444861t_unit @ X @ Ys3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_91_sorted__wrt_Oinduct,axiom,
    ! [P: ( nat > nat > $o ) > list_nat > $o,A0: nat > nat > $o,A1: list_nat] :
      ( ! [P2: nat > nat > $o] : ( P @ P2 @ nil_nat )
     => ( ! [P2: nat > nat > $o,X: nat,Ys3: list_nat] :
            ( ( P @ P2 @ Ys3 )
           => ( P @ P2 @ ( cons_nat @ X @ Ys3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_92_sorted__wrt_Oinduct,axiom,
    ! [P: ( config256849571t_unit > config256849571t_unit > $o ) > list_c1059388851t_unit > $o,A0: config256849571t_unit > config256849571t_unit > $o,A1: list_c1059388851t_unit] :
      ( ! [P2: config256849571t_unit > config256849571t_unit > $o] : ( P @ P2 @ nil_co1338500125t_unit )
     => ( ! [P2: config256849571t_unit > config256849571t_unit > $o,X: config256849571t_unit,Ys3: list_c1059388851t_unit] :
            ( ( P @ P2 @ Ys3 )
           => ( P @ P2 @ ( cons_c1162654829t_unit @ X @ Ys3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_93_sorted__wrt_Oinduct,axiom,
    ! [P: ( message_p_v > message_p_v > $o ) > list_message_p_v > $o,A0: message_p_v > message_p_v > $o,A1: list_message_p_v] :
      ( ! [P2: message_p_v > message_p_v > $o] : ( P @ P2 @ nil_message_p_v )
     => ( ! [P2: message_p_v > message_p_v > $o,X: message_p_v,Ys3: list_message_p_v] :
            ( ( P @ P2 @ Ys3 )
           => ( P @ P2 @ ( cons_message_p_v @ X @ Ys3 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_94_remdups__adj_Ocases,axiom,
    ! [X3: list_l1619404459ge_p_v] :
      ( ( X3 != nil_list_message_p_v )
     => ( ! [X: list_message_p_v] :
            ( X3
           != ( cons_l233104475ge_p_v @ X @ nil_list_message_p_v ) )
       => ~ ! [X: list_message_p_v,Y3: list_message_p_v,Xs2: list_l1619404459ge_p_v] :
              ( X3
             != ( cons_l233104475ge_p_v @ X @ ( cons_l233104475ge_p_v @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_95_remdups__adj_Ocases,axiom,
    ! [X3: list_l611321411t_unit] :
      ( ( X3 != nil_li307996205t_unit )
     => ( ! [X: list_c1059388851t_unit] :
            ( X3
           != ( cons_l1083444861t_unit @ X @ nil_li307996205t_unit ) )
       => ~ ! [X: list_c1059388851t_unit,Y3: list_c1059388851t_unit,Xs2: list_l611321411t_unit] :
              ( X3
             != ( cons_l1083444861t_unit @ X @ ( cons_l1083444861t_unit @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_96_remdups__adj_Ocases,axiom,
    ! [X3: list_nat] :
      ( ( X3 != nil_nat )
     => ( ! [X: nat] :
            ( X3
           != ( cons_nat @ X @ nil_nat ) )
       => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
              ( X3
             != ( cons_nat @ X @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_97_remdups__adj_Ocases,axiom,
    ! [X3: list_c1059388851t_unit] :
      ( ( X3 != nil_co1338500125t_unit )
     => ( ! [X: config256849571t_unit] :
            ( X3
           != ( cons_c1162654829t_unit @ X @ nil_co1338500125t_unit ) )
       => ~ ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( X3
             != ( cons_c1162654829t_unit @ X @ ( cons_c1162654829t_unit @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_98_remdups__adj_Ocases,axiom,
    ! [X3: list_message_p_v] :
      ( ( X3 != nil_message_p_v )
     => ( ! [X: message_p_v] :
            ( X3
           != ( cons_message_p_v @ X @ nil_message_p_v ) )
       => ~ ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v] :
              ( X3
             != ( cons_message_p_v @ X @ ( cons_message_p_v @ Y3 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_99_transpose_Ocases,axiom,
    ! [X3: list_list_nat] :
      ( ( X3 != nil_list_nat )
     => ( ! [Xss: list_list_nat] :
            ( X3
           != ( cons_list_nat @ nil_nat @ Xss ) )
       => ~ ! [X: nat,Xs2: list_nat,Xss: list_list_nat] :
              ( X3
             != ( cons_list_nat @ ( cons_nat @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_100_transpose_Ocases,axiom,
    ! [X3: list_l611321411t_unit] :
      ( ( X3 != nil_li307996205t_unit )
     => ( ! [Xss: list_l611321411t_unit] :
            ( X3
           != ( cons_l1083444861t_unit @ nil_co1338500125t_unit @ Xss ) )
       => ~ ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Xss: list_l611321411t_unit] :
              ( X3
             != ( cons_l1083444861t_unit @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_101_transpose_Ocases,axiom,
    ! [X3: list_l1619404459ge_p_v] :
      ( ( X3 != nil_list_message_p_v )
     => ( ! [Xss: list_l1619404459ge_p_v] :
            ( X3
           != ( cons_l233104475ge_p_v @ nil_message_p_v @ Xss ) )
       => ~ ! [X: message_p_v,Xs2: list_message_p_v,Xss: list_l1619404459ge_p_v] :
              ( X3
             != ( cons_l233104475ge_p_v @ ( cons_message_p_v @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_102_shuffles_Oinduct,axiom,
    ! [P: list_c1059388851t_unit > list_c1059388851t_unit > $o,A0: list_c1059388851t_unit,A1: list_c1059388851t_unit] :
      ( ! [X_1: list_c1059388851t_unit] : ( P @ nil_co1338500125t_unit @ X_1 )
     => ( ! [Xs2: list_c1059388851t_unit] : ( P @ Xs2 @ nil_co1338500125t_unit )
       => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] :
              ( ( P @ Xs2 @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
             => ( ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% shuffles.induct
thf(fact_103_shuffles_Oinduct,axiom,
    ! [P: list_message_p_v > list_message_p_v > $o,A0: list_message_p_v,A1: list_message_p_v] :
      ( ! [X_1: list_message_p_v] : ( P @ nil_message_p_v @ X_1 )
     => ( ! [Xs2: list_message_p_v] : ( P @ Xs2 @ nil_message_p_v )
       => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: message_p_v,Ys3: list_message_p_v] :
              ( ( P @ Xs2 @ ( cons_message_p_v @ Y3 @ Ys3 ) )
             => ( ( P @ ( cons_message_p_v @ X @ Xs2 ) @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% shuffles.induct
thf(fact_104_infiniteExecutionCfg_Oelims,axiom,
    ! [X3: config256849571t_unit,Xa: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,Xb: list_c1059388851t_unit > list_message_p_v > list_message_p_v,Xc: nat,Y: list_c1059388851t_unit] :
      ( ( ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = zero_zero_nat )
         => ( Y
           != ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) ) )
       => ~ ! [N: nat] :
              ( ( Xc
                = ( suc @ N ) )
             => ( Y
               != ( Xa @ ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ N ) @ ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ N ) ) ) ) ) ) ).

% infiniteExecutionCfg.elims
thf(fact_105_infiniteExecutionMsg_Oelims,axiom,
    ! [X3: config256849571t_unit,Xa: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,Xb: list_c1059388851t_unit > list_message_p_v > list_message_p_v,Xc: nat,Y: list_message_p_v] :
      ( ( ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xc = zero_zero_nat )
         => ( Y != nil_message_p_v ) )
       => ~ ! [N: nat] :
              ( ( Xc
                = ( suc @ N ) )
             => ( Y
               != ( Xb @ ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ N ) @ ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ N ) ) ) ) ) ) ).

% infiniteExecutionMsg.elims
thf(fact_106_infiniteExecutionCfg_Osimps_I2_J,axiom,
    ! [Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N2: nat] :
      ( ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ ( suc @ N2 ) )
      = ( FStepCfg @ ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) @ ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) ) ) ).

% infiniteExecutionCfg.simps(2)
thf(fact_107_infiniteExecutionMsg_Osimps_I2_J,axiom,
    ! [Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N2: nat] :
      ( ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ ( suc @ N2 ) )
      = ( FStepMsg @ ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) @ ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) ) ) ).

% infiniteExecutionMsg.simps(2)
thf(fact_108_flpPseudoConsensus_OinfiniteExecutionCfg_Osimps_I1_J,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ zero_zero_nat )
        = ( cons_c1162654829t_unit @ Cfg @ nil_co1338500125t_unit ) ) ) ).

% flpPseudoConsensus.infiniteExecutionCfg.simps(1)
thf(fact_109_n__lists__Nil,axiom,
    ! [N2: nat] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( n_list1987762709t_unit @ N2 @ nil_co1338500125t_unit )
          = ( cons_l1083444861t_unit @ nil_co1338500125t_unit @ nil_li307996205t_unit ) ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( n_list1987762709t_unit @ N2 @ nil_co1338500125t_unit )
          = nil_li307996205t_unit ) ) ) ).

% n_lists_Nil
thf(fact_110_n__lists__Nil,axiom,
    ! [N2: nat] :
      ( ( ( N2 = zero_zero_nat )
       => ( ( n_lists_message_p_v @ N2 @ nil_message_p_v )
          = ( cons_l233104475ge_p_v @ nil_message_p_v @ nil_list_message_p_v ) ) )
      & ( ( N2 != zero_zero_nat )
       => ( ( n_lists_message_p_v @ N2 @ nil_message_p_v )
          = nil_list_message_p_v ) ) ) ).

% n_lists_Nil
thf(fact_111_insert__Nil,axiom,
    ! [X3: config256849571t_unit] :
      ( ( insert1308755079t_unit @ X3 @ nil_co1338500125t_unit )
      = ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) ) ).

% insert_Nil
thf(fact_112_insert__Nil,axiom,
    ! [X3: message_p_v] :
      ( ( insert_message_p_v @ X3 @ nil_message_p_v )
      = ( cons_message_p_v @ X3 @ nil_message_p_v ) ) ).

% insert_Nil
thf(fact_113_nths__singleton,axiom,
    ! [A3: set_nat,X3: config256849571t_unit] :
      ( ( ( member_nat @ zero_zero_nat @ A3 )
       => ( ( nths_c890550943t_unit @ ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) @ A3 )
          = ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) ) )
      & ( ~ ( member_nat @ zero_zero_nat @ A3 )
       => ( ( nths_c890550943t_unit @ ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) @ A3 )
          = nil_co1338500125t_unit ) ) ) ).

% nths_singleton
thf(fact_114_nths__singleton,axiom,
    ! [A3: set_nat,X3: message_p_v] :
      ( ( ( member_nat @ zero_zero_nat @ A3 )
       => ( ( nths_message_p_v @ ( cons_message_p_v @ X3 @ nil_message_p_v ) @ A3 )
          = ( cons_message_p_v @ X3 @ nil_message_p_v ) ) )
      & ( ~ ( member_nat @ zero_zero_nat @ A3 )
       => ( ( nths_message_p_v @ ( cons_message_p_v @ X3 @ nil_message_p_v ) @ A3 )
          = nil_message_p_v ) ) ) ).

% nths_singleton
thf(fact_115_list__ex1__simps_I1_J,axiom,
    ! [P: config256849571t_unit > $o] :
      ~ ( list_e1598815642t_unit @ P @ nil_co1338500125t_unit ) ).

% list_ex1_simps(1)
thf(fact_116_list__ex1__simps_I1_J,axiom,
    ! [P: message_p_v > $o] :
      ~ ( list_ex1_message_p_v @ P @ nil_message_p_v ) ).

% list_ex1_simps(1)
thf(fact_117_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_c1059388851t_unit] :
      ( ( n_list1987762709t_unit @ zero_zero_nat @ Xs )
      = ( cons_l1083444861t_unit @ nil_co1338500125t_unit @ nil_li307996205t_unit ) ) ).

% n_lists.simps(1)
thf(fact_118_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_message_p_v] :
      ( ( n_lists_message_p_v @ zero_zero_nat @ Xs )
      = ( cons_l233104475ge_p_v @ nil_message_p_v @ nil_list_message_p_v ) ) ).

% n_lists.simps(1)
thf(fact_119_infiniteExecutionCfg__infiniteExecutionMsg_Oinduct_I2_J,axiom,
    ! [P: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > $o,Q: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > $o,A4: config256849571t_unit,A5: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,A6: list_c1059388851t_unit > list_message_p_v > list_message_p_v,A7: nat] :
      ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v] : ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ zero_zero_nat )
     => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N: nat] :
            ( ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
           => ( ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
             => ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ ( suc @ N ) ) ) )
       => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v] : ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ zero_zero_nat )
         => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N: nat] :
                ( ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
               => ( ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
                 => ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ ( suc @ N ) ) ) )
           => ( Q @ A4 @ A5 @ A6 @ A7 ) ) ) ) ) ).

% infiniteExecutionCfg_infiniteExecutionMsg.induct(2)
thf(fact_120_infiniteExecutionCfg__infiniteExecutionMsg_Oinduct_I1_J,axiom,
    ! [P: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > $o,Q: config256849571t_unit > ( list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit ) > ( list_c1059388851t_unit > list_message_p_v > list_message_p_v ) > nat > $o,A0: config256849571t_unit,A1: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,A2: list_c1059388851t_unit > list_message_p_v > list_message_p_v,A32: nat] :
      ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v] : ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ zero_zero_nat )
     => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N: nat] :
            ( ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
           => ( ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
             => ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ ( suc @ N ) ) ) )
       => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v] : ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ zero_zero_nat )
         => ( ! [Cfg2: config256849571t_unit,FStepCfg2: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg2: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N: nat] :
                ( ( P @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
               => ( ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ N )
                 => ( Q @ Cfg2 @ FStepCfg2 @ FStepMsg2 @ ( suc @ N ) ) ) )
           => ( P @ A0 @ A1 @ A2 @ A32 ) ) ) ) ) ).

% infiniteExecutionCfg_infiniteExecutionMsg.induct(1)
thf(fact_121_nths__nil,axiom,
    ! [A3: set_nat] :
      ( ( nths_c890550943t_unit @ nil_co1338500125t_unit @ A3 )
      = nil_co1338500125t_unit ) ).

% nths_nil
thf(fact_122_nths__nil,axiom,
    ! [A3: set_nat] :
      ( ( nths_message_p_v @ nil_message_p_v @ A3 )
      = nil_message_p_v ) ).

% nths_nil
thf(fact_123_flpPseudoConsensus_OinfiniteExecutionMsg_Osimps_I2_J,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N2: nat] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ ( suc @ N2 ) )
        = ( FStepMsg @ ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) @ ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) ) ) ) ).

% flpPseudoConsensus.infiniteExecutionMsg.simps(2)
thf(fact_124_flpPseudoConsensus_OinfiniteExecutionCfg_Osimps_I2_J,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v,N2: nat] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ ( suc @ N2 ) )
        = ( FStepCfg @ ( fLPThe1519354920_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) @ ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ N2 ) ) ) ) ).

% flpPseudoConsensus.infiniteExecutionCfg.simps(2)
thf(fact_125_flpPseudoConsensus_OinfiniteExecutionMsg_Oelims,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,X3: config256849571t_unit,Xa: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,Xb: list_c1059388851t_unit > list_message_p_v > list_message_p_v,Xc: nat,Y: list_message_p_v] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ Xc )
          = Y )
       => ( ( ( Xc = zero_zero_nat )
           => ( Y != nil_message_p_v ) )
         => ~ ! [N: nat] :
                ( ( Xc
                  = ( suc @ N ) )
               => ( Y
                 != ( Xb @ ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ N ) @ ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ N ) ) ) ) ) ) ) ).

% flpPseudoConsensus.infiniteExecutionMsg.elims
thf(fact_126_flpPseudoConsensus_OinfiniteExecutionMsg_Osimps_I1_J,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,Cfg: config256849571t_unit,FStepCfg: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,FStepMsg: list_c1059388851t_unit > list_message_p_v > list_message_p_v] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( fLPThe536531371_p_v_s @ Cfg @ FStepCfg @ FStepMsg @ zero_zero_nat )
        = nil_message_p_v ) ) ).

% flpPseudoConsensus.infiniteExecutionMsg.simps(1)
thf(fact_127_flpPseudoConsensus_OinfiniteExecutionCfg_Oelims,axiom,
    ! [Trans: p > s > messageValue_v > s,Sends: p > s > messageValue_v > message_p_v > nat,Start: p > s,X3: config256849571t_unit,Xa: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit,Xb: list_c1059388851t_unit > list_message_p_v > list_message_p_v,Xc: nat,Y: list_c1059388851t_unit] :
      ( ( fLPThe9398366_p_s_v @ Trans @ Sends @ Start )
     => ( ( ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ Xc )
          = Y )
       => ( ( ( Xc = zero_zero_nat )
           => ( Y
             != ( cons_c1162654829t_unit @ X3 @ nil_co1338500125t_unit ) ) )
         => ~ ! [N: nat] :
                ( ( Xc
                  = ( suc @ N ) )
               => ( Y
                 != ( Xa @ ( fLPThe1519354920_p_v_s @ X3 @ Xa @ Xb @ N ) @ ( fLPThe536531371_p_v_s @ X3 @ Xa @ Xb @ N ) ) ) ) ) ) ) ).

% flpPseudoConsensus.infiniteExecutionCfg.elims
thf(fact_128_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_129_nat_Oinject,axiom,
    ! [X23: nat,Y23: nat] :
      ( ( ( suc @ X23 )
        = ( suc @ Y23 ) )
      = ( X23 = Y23 ) ) ).

% nat.inject
thf(fact_130_nat_Odistinct_I1_J,axiom,
    ! [X23: nat] :
      ( zero_zero_nat
     != ( suc @ X23 ) ) ).

% nat.distinct(1)
thf(fact_131_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_132_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_133_nat_OdiscI,axiom,
    ! [Nat: nat,X23: nat] :
      ( ( Nat
        = ( suc @ X23 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_134_nat__induct,axiom,
    ! [P: nat > $o,N2: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N: nat] :
            ( ( P @ N )
           => ( P @ ( suc @ N ) ) )
       => ( P @ N2 ) ) ) ).

% nat_induct
thf(fact_135_Suc__inject,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ( suc @ X3 )
        = ( suc @ Y ) )
     => ( X3 = Y ) ) ).

% Suc_inject
thf(fact_136_n__not__Suc__n,axiom,
    ! [N2: nat] :
      ( N2
     != ( suc @ N2 ) ) ).

% n_not_Suc_n
thf(fact_137_not0__implies__Suc,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
     => ? [M: nat] :
          ( N2
          = ( suc @ M ) ) ) ).

% not0_implies_Suc
thf(fact_138_old_Onat_Oinducts,axiom,
    ! [P: nat > $o,Nat: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [Nat3: nat] :
            ( ( P @ Nat3 )
           => ( P @ ( suc @ Nat3 ) ) )
       => ( P @ Nat ) ) ) ).

% old.nat.inducts
thf(fact_139_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_140_Zero__not__Suc,axiom,
    ! [M2: nat] :
      ( zero_zero_nat
     != ( suc @ M2 ) ) ).

% Zero_not_Suc
thf(fact_141_Zero__neq__Suc,axiom,
    ! [M2: nat] :
      ( zero_zero_nat
     != ( suc @ M2 ) ) ).

% Zero_neq_Suc
thf(fact_142_Suc__neq__Zero,axiom,
    ! [M2: nat] :
      ( ( suc @ M2 )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_143_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N: nat] :
            ( ( P @ ( suc @ N ) )
           => ( P @ N ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_144_diff__induct,axiom,
    ! [P: nat > nat > $o,M2: nat,N2: nat] :
      ( ! [X: nat] : ( P @ X @ zero_zero_nat )
     => ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
       => ( ! [X: nat,Y3: nat] :
              ( ( P @ X @ Y3 )
             => ( P @ ( suc @ X ) @ ( suc @ Y3 ) ) )
         => ( P @ M2 @ N2 ) ) ) ) ).

% diff_induct
thf(fact_145_product__lists_Osimps_I1_J,axiom,
    ( ( produc663212148t_unit @ nil_li307996205t_unit )
    = ( cons_l1083444861t_unit @ nil_co1338500125t_unit @ nil_li307996205t_unit ) ) ).

% product_lists.simps(1)
thf(fact_146_product__lists_Osimps_I1_J,axiom,
    ( ( produc1505827982ge_p_v @ nil_list_message_p_v )
    = ( cons_l233104475ge_p_v @ nil_message_p_v @ nil_list_message_p_v ) ) ).

% product_lists.simps(1)
thf(fact_147_subseqs_Osimps_I1_J,axiom,
    ( ( subseq1144048270t_unit @ nil_co1338500125t_unit )
    = ( cons_l1083444861t_unit @ nil_co1338500125t_unit @ nil_li307996205t_unit ) ) ).

% subseqs.simps(1)
thf(fact_148_subseqs_Osimps_I1_J,axiom,
    ( ( subseqs_message_p_v @ nil_message_p_v )
    = ( cons_l233104475ge_p_v @ nil_message_p_v @ nil_list_message_p_v ) ) ).

% subseqs.simps(1)
thf(fact_149_gen__length__code_I2_J,axiom,
    ! [N2: nat,X3: config256849571t_unit,Xs: list_c1059388851t_unit] :
      ( ( gen_le193291088t_unit @ N2 @ ( cons_c1162654829t_unit @ X3 @ Xs ) )
      = ( gen_le193291088t_unit @ ( suc @ N2 ) @ Xs ) ) ).

% gen_length_code(2)
thf(fact_150_gen__length__code_I2_J,axiom,
    ! [N2: nat,X3: message_p_v,Xs: list_message_p_v] :
      ( ( gen_le697204914ge_p_v @ N2 @ ( cons_message_p_v @ X3 @ Xs ) )
      = ( gen_le697204914ge_p_v @ ( suc @ N2 ) @ Xs ) ) ).

% gen_length_code(2)
thf(fact_151_count__list_Osimps_I1_J,axiom,
    ! [Y: config256849571t_unit] :
      ( ( count_1396868135t_unit @ nil_co1338500125t_unit @ Y )
      = zero_zero_nat ) ).

% count_list.simps(1)
thf(fact_152_count__list_Osimps_I1_J,axiom,
    ! [Y: message_p_v] :
      ( ( count_1322329499ge_p_v @ nil_message_p_v @ Y )
      = zero_zero_nat ) ).

% count_list.simps(1)
thf(fact_153_map__tailrec__rev_Oelims,axiom,
    ! [X3: config256849571t_unit > config256849571t_unit,Xa: list_c1059388851t_unit,Xb: list_c1059388851t_unit,Y: list_c1059388851t_unit] :
      ( ( ( map_ta91747645t_unit @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = nil_co1338500125t_unit )
         => ( Y != Xb ) )
       => ~ ! [A: config256849571t_unit,As: list_c1059388851t_unit] :
              ( ( Xa
                = ( cons_c1162654829t_unit @ A @ As ) )
             => ( Y
               != ( map_ta91747645t_unit @ X3 @ As @ ( cons_c1162654829t_unit @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).

% map_tailrec_rev.elims
thf(fact_154_map__tailrec__rev_Oelims,axiom,
    ! [X3: config256849571t_unit > message_p_v,Xa: list_c1059388851t_unit,Xb: list_message_p_v,Y: list_message_p_v] :
      ( ( ( map_ta782801413ge_p_v @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = nil_co1338500125t_unit )
         => ( Y != Xb ) )
       => ~ ! [A: config256849571t_unit,As: list_c1059388851t_unit] :
              ( ( Xa
                = ( cons_c1162654829t_unit @ A @ As ) )
             => ( Y
               != ( map_ta782801413ge_p_v @ X3 @ As @ ( cons_message_p_v @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).

% map_tailrec_rev.elims
thf(fact_155_map__tailrec__rev_Oelims,axiom,
    ! [X3: message_p_v > config256849571t_unit,Xa: list_message_p_v,Xb: list_c1059388851t_unit,Y: list_c1059388851t_unit] :
      ( ( ( map_ta1131406733t_unit @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = nil_message_p_v )
         => ( Y != Xb ) )
       => ~ ! [A: message_p_v,As: list_message_p_v] :
              ( ( Xa
                = ( cons_message_p_v @ A @ As ) )
             => ( Y
               != ( map_ta1131406733t_unit @ X3 @ As @ ( cons_c1162654829t_unit @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).

% map_tailrec_rev.elims
thf(fact_156_map__tailrec__rev_Oelims,axiom,
    ! [X3: message_p_v > message_p_v,Xa: list_message_p_v,Xb: list_message_p_v,Y: list_message_p_v] :
      ( ( ( map_ta1016577461ge_p_v @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xa = nil_message_p_v )
         => ( Y != Xb ) )
       => ~ ! [A: message_p_v,As: list_message_p_v] :
              ( ( Xa
                = ( cons_message_p_v @ A @ As ) )
             => ( Y
               != ( map_ta1016577461ge_p_v @ X3 @ As @ ( cons_message_p_v @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).

% map_tailrec_rev.elims
thf(fact_157_map__tailrec__rev_Osimps_I2_J,axiom,
    ! [F2: config256849571t_unit > config256849571t_unit,A8: config256849571t_unit,As2: list_c1059388851t_unit,Bs2: list_c1059388851t_unit] :
      ( ( map_ta91747645t_unit @ F2 @ ( cons_c1162654829t_unit @ A8 @ As2 ) @ Bs2 )
      = ( map_ta91747645t_unit @ F2 @ As2 @ ( cons_c1162654829t_unit @ ( F2 @ A8 ) @ Bs2 ) ) ) ).

% map_tailrec_rev.simps(2)
thf(fact_158_map__tailrec__rev_Osimps_I2_J,axiom,
    ! [F2: config256849571t_unit > message_p_v,A8: config256849571t_unit,As2: list_c1059388851t_unit,Bs2: list_message_p_v] :
      ( ( map_ta782801413ge_p_v @ F2 @ ( cons_c1162654829t_unit @ A8 @ As2 ) @ Bs2 )
      = ( map_ta782801413ge_p_v @ F2 @ As2 @ ( cons_message_p_v @ ( F2 @ A8 ) @ Bs2 ) ) ) ).

% map_tailrec_rev.simps(2)
thf(fact_159_map__tailrec__rev_Osimps_I2_J,axiom,
    ! [F2: message_p_v > config256849571t_unit,A8: message_p_v,As2: list_message_p_v,Bs2: list_c1059388851t_unit] :
      ( ( map_ta1131406733t_unit @ F2 @ ( cons_message_p_v @ A8 @ As2 ) @ Bs2 )
      = ( map_ta1131406733t_unit @ F2 @ As2 @ ( cons_c1162654829t_unit @ ( F2 @ A8 ) @ Bs2 ) ) ) ).

% map_tailrec_rev.simps(2)
thf(fact_160_map__tailrec__rev_Osimps_I2_J,axiom,
    ! [F2: message_p_v > message_p_v,A8: message_p_v,As2: list_message_p_v,Bs2: list_message_p_v] :
      ( ( map_ta1016577461ge_p_v @ F2 @ ( cons_message_p_v @ A8 @ As2 ) @ Bs2 )
      = ( map_ta1016577461ge_p_v @ F2 @ As2 @ ( cons_message_p_v @ ( F2 @ A8 ) @ Bs2 ) ) ) ).

% map_tailrec_rev.simps(2)
thf(fact_161_gen__length__code_I1_J,axiom,
    ! [N2: nat] :
      ( ( gen_le193291088t_unit @ N2 @ nil_co1338500125t_unit )
      = N2 ) ).

% gen_length_code(1)
thf(fact_162_gen__length__code_I1_J,axiom,
    ! [N2: nat] :
      ( ( gen_le697204914ge_p_v @ N2 @ nil_message_p_v )
      = N2 ) ).

% gen_length_code(1)
thf(fact_163_ord_Olexordp__eq__simps_I3_J,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,X3: config256849571t_unit,Xs: list_c1059388851t_unit] :
      ~ ( lexord1758866263t_unit @ Less @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ nil_co1338500125t_unit ) ).

% ord.lexordp_eq_simps(3)
thf(fact_164_ord_Olexordp__eq__simps_I3_J,axiom,
    ! [Less: message_p_v > message_p_v > $o,X3: message_p_v,Xs: list_message_p_v] :
      ~ ( lexord2101627499ge_p_v @ Less @ ( cons_message_p_v @ X3 @ Xs ) @ nil_message_p_v ) ).

% ord.lexordp_eq_simps(3)
thf(fact_165_bind__simps_I1_J,axiom,
    ! [F2: config256849571t_unit > list_c1059388851t_unit] :
      ( ( bind_c1439720399t_unit @ nil_co1338500125t_unit @ F2 )
      = nil_co1338500125t_unit ) ).

% bind_simps(1)
thf(fact_166_bind__simps_I1_J,axiom,
    ! [F2: config256849571t_unit > list_message_p_v] :
      ( ( bind_c246984691ge_p_v @ nil_co1338500125t_unit @ F2 )
      = nil_message_p_v ) ).

% bind_simps(1)
thf(fact_167_bind__simps_I1_J,axiom,
    ! [F2: message_p_v > list_c1059388851t_unit] :
      ( ( bind_m595590011t_unit @ nil_message_p_v @ F2 )
      = nil_co1338500125t_unit ) ).

% bind_simps(1)
thf(fact_168_bind__simps_I1_J,axiom,
    ! [F2: message_p_v > list_message_p_v] :
      ( ( bind_m729301831ge_p_v @ nil_message_p_v @ F2 )
      = nil_message_p_v ) ).

% bind_simps(1)
thf(fact_169_listrelp_Ocases,axiom,
    ! [R: config256849571t_unit > config256849571t_unit > $o,A1: list_c1059388851t_unit,A2: list_c1059388851t_unit] :
      ( ( listre990624391t_unit @ R @ A1 @ A2 )
     => ( ( ( A1 = nil_co1338500125t_unit )
         => ( A2 != nil_co1338500125t_unit ) )
       => ~ ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( ( A1
                = ( cons_c1162654829t_unit @ X @ Xs2 ) )
             => ! [Ys3: list_c1059388851t_unit] :
                  ( ( A2
                    = ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
                 => ( ( R @ X @ Y3 )
                   => ~ ( listre990624391t_unit @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).

% listrelp.cases
thf(fact_170_listrelp_Ocases,axiom,
    ! [R: config256849571t_unit > message_p_v > $o,A1: list_c1059388851t_unit,A2: list_message_p_v] :
      ( ( listre823101243ge_p_v @ R @ A1 @ A2 )
     => ( ( ( A1 = nil_co1338500125t_unit )
         => ( A2 != nil_message_p_v ) )
       => ~ ! [X: config256849571t_unit,Y3: message_p_v,Xs2: list_c1059388851t_unit] :
              ( ( A1
                = ( cons_c1162654829t_unit @ X @ Xs2 ) )
             => ! [Ys3: list_message_p_v] :
                  ( ( A2
                    = ( cons_message_p_v @ Y3 @ Ys3 ) )
                 => ( ( R @ X @ Y3 )
                   => ~ ( listre823101243ge_p_v @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).

% listrelp.cases
thf(fact_171_listrelp_Ocases,axiom,
    ! [R: message_p_v > config256849571t_unit > $o,A1: list_message_p_v,A2: list_c1059388851t_unit] :
      ( ( listre1171706563t_unit @ R @ A1 @ A2 )
     => ( ( ( A1 = nil_message_p_v )
         => ( A2 != nil_co1338500125t_unit ) )
       => ~ ! [X: message_p_v,Y3: config256849571t_unit,Xs2: list_message_p_v] :
              ( ( A1
                = ( cons_message_p_v @ X @ Xs2 ) )
             => ! [Ys3: list_c1059388851t_unit] :
                  ( ( A2
                    = ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
                 => ( ( R @ X @ Y3 )
                   => ~ ( listre1171706563t_unit @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).

% listrelp.cases
thf(fact_172_listrelp_Ocases,axiom,
    ! [R: message_p_v > message_p_v > $o,A1: list_message_p_v,A2: list_message_p_v] :
      ( ( listre1295695359ge_p_v @ R @ A1 @ A2 )
     => ( ( ( A1 = nil_message_p_v )
         => ( A2 != nil_message_p_v ) )
       => ~ ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v] :
              ( ( A1
                = ( cons_message_p_v @ X @ Xs2 ) )
             => ! [Ys3: list_message_p_v] :
                  ( ( A2
                    = ( cons_message_p_v @ Y3 @ Ys3 ) )
                 => ( ( R @ X @ Y3 )
                   => ~ ( listre1295695359ge_p_v @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).

% listrelp.cases
thf(fact_173_listrelp_Osimps,axiom,
    ( listre990624391t_unit
    = ( ^ [R2: config256849571t_unit > config256849571t_unit > $o,A12: list_c1059388851t_unit,A22: list_c1059388851t_unit] :
          ( ( ( A12 = nil_co1338500125t_unit )
            & ( A22 = nil_co1338500125t_unit ) )
          | ? [X4: config256849571t_unit,Y2: config256849571t_unit,Xs3: list_c1059388851t_unit,Ys: list_c1059388851t_unit] :
              ( ( A12
                = ( cons_c1162654829t_unit @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
              & ( R2 @ X4 @ Y2 )
              & ( listre990624391t_unit @ R2 @ Xs3 @ Ys ) ) ) ) ) ).

% listrelp.simps
thf(fact_174_listrelp_Osimps,axiom,
    ( listre823101243ge_p_v
    = ( ^ [R2: config256849571t_unit > message_p_v > $o,A12: list_c1059388851t_unit,A22: list_message_p_v] :
          ( ( ( A12 = nil_co1338500125t_unit )
            & ( A22 = nil_message_p_v ) )
          | ? [X4: config256849571t_unit,Y2: message_p_v,Xs3: list_c1059388851t_unit,Ys: list_message_p_v] :
              ( ( A12
                = ( cons_c1162654829t_unit @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_message_p_v @ Y2 @ Ys ) )
              & ( R2 @ X4 @ Y2 )
              & ( listre823101243ge_p_v @ R2 @ Xs3 @ Ys ) ) ) ) ) ).

% listrelp.simps
thf(fact_175_listrelp_Osimps,axiom,
    ( listre1171706563t_unit
    = ( ^ [R2: message_p_v > config256849571t_unit > $o,A12: list_message_p_v,A22: list_c1059388851t_unit] :
          ( ( ( A12 = nil_message_p_v )
            & ( A22 = nil_co1338500125t_unit ) )
          | ? [X4: message_p_v,Y2: config256849571t_unit,Xs3: list_message_p_v,Ys: list_c1059388851t_unit] :
              ( ( A12
                = ( cons_message_p_v @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
              & ( R2 @ X4 @ Y2 )
              & ( listre1171706563t_unit @ R2 @ Xs3 @ Ys ) ) ) ) ) ).

% listrelp.simps
thf(fact_176_listrelp_Osimps,axiom,
    ( listre1295695359ge_p_v
    = ( ^ [R2: message_p_v > message_p_v > $o,A12: list_message_p_v,A22: list_message_p_v] :
          ( ( ( A12 = nil_message_p_v )
            & ( A22 = nil_message_p_v ) )
          | ? [X4: message_p_v,Y2: message_p_v,Xs3: list_message_p_v,Ys: list_message_p_v] :
              ( ( A12
                = ( cons_message_p_v @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_message_p_v @ Y2 @ Ys ) )
              & ( R2 @ X4 @ Y2 )
              & ( listre1295695359ge_p_v @ R2 @ Xs3 @ Ys ) ) ) ) ) ).

% listrelp.simps
thf(fact_177_listrelp_Oinducts,axiom,
    ! [R: config256849571t_unit > config256849571t_unit > $o,X12: list_c1059388851t_unit,X23: list_c1059388851t_unit,P: list_c1059388851t_unit > list_c1059388851t_unit > $o] :
      ( ( listre990624391t_unit @ R @ X12 @ X23 )
     => ( ( P @ nil_co1338500125t_unit @ nil_co1338500125t_unit )
       => ( ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit,Ys3: list_c1059388851t_unit] :
              ( ( R @ X @ Y3 )
             => ( ( listre990624391t_unit @ R @ Xs2 @ Ys3 )
               => ( ( P @ Xs2 @ Ys3 )
                 => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) ) )
         => ( P @ X12 @ X23 ) ) ) ) ).

% listrelp.inducts
thf(fact_178_listrelp_Oinducts,axiom,
    ! [R: config256849571t_unit > message_p_v > $o,X12: list_c1059388851t_unit,X23: list_message_p_v,P: list_c1059388851t_unit > list_message_p_v > $o] :
      ( ( listre823101243ge_p_v @ R @ X12 @ X23 )
     => ( ( P @ nil_co1338500125t_unit @ nil_message_p_v )
       => ( ! [X: config256849571t_unit,Y3: message_p_v,Xs2: list_c1059388851t_unit,Ys3: list_message_p_v] :
              ( ( R @ X @ Y3 )
             => ( ( listre823101243ge_p_v @ R @ Xs2 @ Ys3 )
               => ( ( P @ Xs2 @ Ys3 )
                 => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) ) )
         => ( P @ X12 @ X23 ) ) ) ) ).

% listrelp.inducts
thf(fact_179_listrelp_Oinducts,axiom,
    ! [R: message_p_v > config256849571t_unit > $o,X12: list_message_p_v,X23: list_c1059388851t_unit,P: list_message_p_v > list_c1059388851t_unit > $o] :
      ( ( listre1171706563t_unit @ R @ X12 @ X23 )
     => ( ( P @ nil_message_p_v @ nil_co1338500125t_unit )
       => ( ! [X: message_p_v,Y3: config256849571t_unit,Xs2: list_message_p_v,Ys3: list_c1059388851t_unit] :
              ( ( R @ X @ Y3 )
             => ( ( listre1171706563t_unit @ R @ Xs2 @ Ys3 )
               => ( ( P @ Xs2 @ Ys3 )
                 => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) ) )
         => ( P @ X12 @ X23 ) ) ) ) ).

% listrelp.inducts
thf(fact_180_listrelp_Oinducts,axiom,
    ! [R: message_p_v > message_p_v > $o,X12: list_message_p_v,X23: list_message_p_v,P: list_message_p_v > list_message_p_v > $o] :
      ( ( listre1295695359ge_p_v @ R @ X12 @ X23 )
     => ( ( P @ nil_message_p_v @ nil_message_p_v )
       => ( ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v,Ys3: list_message_p_v] :
              ( ( R @ X @ Y3 )
             => ( ( listre1295695359ge_p_v @ R @ Xs2 @ Ys3 )
               => ( ( P @ Xs2 @ Ys3 )
                 => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) ) )
         => ( P @ X12 @ X23 ) ) ) ) ).

% listrelp.inducts
thf(fact_181_ord_Olexordp__eq__simps_I4_J,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,X3: config256849571t_unit,Xs: list_c1059388851t_unit,Y: config256849571t_unit,Ys2: list_c1059388851t_unit] :
      ( ( lexord1758866263t_unit @ Less @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ ( cons_c1162654829t_unit @ Y @ Ys2 ) )
      = ( ( Less @ X3 @ Y )
        | ( ~ ( Less @ Y @ X3 )
          & ( lexord1758866263t_unit @ Less @ Xs @ Ys2 ) ) ) ) ).

% ord.lexordp_eq_simps(4)
thf(fact_182_ord_Olexordp__eq__simps_I4_J,axiom,
    ! [Less: message_p_v > message_p_v > $o,X3: message_p_v,Xs: list_message_p_v,Y: message_p_v,Ys2: list_message_p_v] :
      ( ( lexord2101627499ge_p_v @ Less @ ( cons_message_p_v @ X3 @ Xs ) @ ( cons_message_p_v @ Y @ Ys2 ) )
      = ( ( Less @ X3 @ Y )
        | ( ~ ( Less @ Y @ X3 )
          & ( lexord2101627499ge_p_v @ Less @ Xs @ Ys2 ) ) ) ) ).

% ord.lexordp_eq_simps(4)
thf(fact_183_ord_Olexordp__eq__simps_I1_J,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,Ys2: list_c1059388851t_unit] : ( lexord1758866263t_unit @ Less @ nil_co1338500125t_unit @ Ys2 ) ).

% ord.lexordp_eq_simps(1)
thf(fact_184_ord_Olexordp__eq__simps_I1_J,axiom,
    ! [Less: message_p_v > message_p_v > $o,Ys2: list_message_p_v] : ( lexord2101627499ge_p_v @ Less @ nil_message_p_v @ Ys2 ) ).

% ord.lexordp_eq_simps(1)
thf(fact_185_ord_Olexordp__eq__simps_I2_J,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,Xs: list_c1059388851t_unit] :
      ( ( lexord1758866263t_unit @ Less @ Xs @ nil_co1338500125t_unit )
      = ( Xs = nil_co1338500125t_unit ) ) ).

% ord.lexordp_eq_simps(2)
thf(fact_186_ord_Olexordp__eq__simps_I2_J,axiom,
    ! [Less: message_p_v > message_p_v > $o,Xs: list_message_p_v] :
      ( ( lexord2101627499ge_p_v @ Less @ Xs @ nil_message_p_v )
      = ( Xs = nil_message_p_v ) ) ).

% ord.lexordp_eq_simps(2)
thf(fact_187_ord_Olexordp__eq_OCons__eq,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,X3: config256849571t_unit,Y: config256849571t_unit,Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ~ ( Less @ X3 @ Y )
     => ( ~ ( Less @ Y @ X3 )
       => ( ( lexord1758866263t_unit @ Less @ Xs @ Ys2 )
         => ( lexord1758866263t_unit @ Less @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ ( cons_c1162654829t_unit @ Y @ Ys2 ) ) ) ) ) ).

% ord.lexordp_eq.Cons_eq
thf(fact_188_ord_Olexordp__eq_OCons__eq,axiom,
    ! [Less: message_p_v > message_p_v > $o,X3: message_p_v,Y: message_p_v,Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ~ ( Less @ X3 @ Y )
     => ( ~ ( Less @ Y @ X3 )
       => ( ( lexord2101627499ge_p_v @ Less @ Xs @ Ys2 )
         => ( lexord2101627499ge_p_v @ Less @ ( cons_message_p_v @ X3 @ Xs ) @ ( cons_message_p_v @ Y @ Ys2 ) ) ) ) ) ).

% ord.lexordp_eq.Cons_eq
thf(fact_189_ord_Olexordp__eq_OCons,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,X3: config256849571t_unit,Y: config256849571t_unit,Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ( Less @ X3 @ Y )
     => ( lexord1758866263t_unit @ Less @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ ( cons_c1162654829t_unit @ Y @ Ys2 ) ) ) ).

% ord.lexordp_eq.Cons
thf(fact_190_ord_Olexordp__eq_OCons,axiom,
    ! [Less: message_p_v > message_p_v > $o,X3: message_p_v,Y: message_p_v,Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ( Less @ X3 @ Y )
     => ( lexord2101627499ge_p_v @ Less @ ( cons_message_p_v @ X3 @ Xs ) @ ( cons_message_p_v @ Y @ Ys2 ) ) ) ).

% ord.lexordp_eq.Cons
thf(fact_191_ord_Olexordp__eq_ONil,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,Ys2: list_c1059388851t_unit] : ( lexord1758866263t_unit @ Less @ nil_co1338500125t_unit @ Ys2 ) ).

% ord.lexordp_eq.Nil
thf(fact_192_ord_Olexordp__eq_ONil,axiom,
    ! [Less: message_p_v > message_p_v > $o,Ys2: list_message_p_v] : ( lexord2101627499ge_p_v @ Less @ nil_message_p_v @ Ys2 ) ).

% ord.lexordp_eq.Nil
thf(fact_193_listrelp_OCons,axiom,
    ! [R: config256849571t_unit > config256849571t_unit > $o,X3: config256849571t_unit,Y: config256849571t_unit,Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ( R @ X3 @ Y )
     => ( ( listre990624391t_unit @ R @ Xs @ Ys2 )
       => ( listre990624391t_unit @ R @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ ( cons_c1162654829t_unit @ Y @ Ys2 ) ) ) ) ).

% listrelp.Cons
thf(fact_194_listrelp_OCons,axiom,
    ! [R: config256849571t_unit > message_p_v > $o,X3: config256849571t_unit,Y: message_p_v,Xs: list_c1059388851t_unit,Ys2: list_message_p_v] :
      ( ( R @ X3 @ Y )
     => ( ( listre823101243ge_p_v @ R @ Xs @ Ys2 )
       => ( listre823101243ge_p_v @ R @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ ( cons_message_p_v @ Y @ Ys2 ) ) ) ) ).

% listrelp.Cons
thf(fact_195_listrelp_OCons,axiom,
    ! [R: message_p_v > config256849571t_unit > $o,X3: message_p_v,Y: config256849571t_unit,Xs: list_message_p_v,Ys2: list_c1059388851t_unit] :
      ( ( R @ X3 @ Y )
     => ( ( listre1171706563t_unit @ R @ Xs @ Ys2 )
       => ( listre1171706563t_unit @ R @ ( cons_message_p_v @ X3 @ Xs ) @ ( cons_c1162654829t_unit @ Y @ Ys2 ) ) ) ) ).

% listrelp.Cons
thf(fact_196_listrelp_OCons,axiom,
    ! [R: message_p_v > message_p_v > $o,X3: message_p_v,Y: message_p_v,Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ( R @ X3 @ Y )
     => ( ( listre1295695359ge_p_v @ R @ Xs @ Ys2 )
       => ( listre1295695359ge_p_v @ R @ ( cons_message_p_v @ X3 @ Xs ) @ ( cons_message_p_v @ Y @ Ys2 ) ) ) ) ).

% listrelp.Cons
thf(fact_197_listrelp_ONil,axiom,
    ! [R: config256849571t_unit > config256849571t_unit > $o] : ( listre990624391t_unit @ R @ nil_co1338500125t_unit @ nil_co1338500125t_unit ) ).

% listrelp.Nil
thf(fact_198_listrelp_ONil,axiom,
    ! [R: config256849571t_unit > message_p_v > $o] : ( listre823101243ge_p_v @ R @ nil_co1338500125t_unit @ nil_message_p_v ) ).

% listrelp.Nil
thf(fact_199_listrelp_ONil,axiom,
    ! [R: message_p_v > config256849571t_unit > $o] : ( listre1171706563t_unit @ R @ nil_message_p_v @ nil_co1338500125t_unit ) ).

% listrelp.Nil
thf(fact_200_listrelp_ONil,axiom,
    ! [R: message_p_v > message_p_v > $o] : ( listre1295695359ge_p_v @ R @ nil_message_p_v @ nil_message_p_v ) ).

% listrelp.Nil
thf(fact_201_ord_Olexordp__eq_Oinducts,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,X12: list_c1059388851t_unit,X23: list_c1059388851t_unit,P: list_c1059388851t_unit > list_c1059388851t_unit > $o] :
      ( ( lexord1758866263t_unit @ Less @ X12 @ X23 )
     => ( ! [X_1: list_c1059388851t_unit] : ( P @ nil_co1338500125t_unit @ X_1 )
       => ( ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit,Ys3: list_c1059388851t_unit] :
              ( ( Less @ X @ Y3 )
             => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) )
         => ( ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit,Ys3: list_c1059388851t_unit] :
                ( ~ ( Less @ X @ Y3 )
               => ( ~ ( Less @ Y3 @ X )
                 => ( ( lexord1758866263t_unit @ Less @ Xs2 @ Ys3 )
                   => ( ( P @ Xs2 @ Ys3 )
                     => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) ) ) )
           => ( P @ X12 @ X23 ) ) ) ) ) ).

% ord.lexordp_eq.inducts
thf(fact_202_ord_Olexordp__eq_Oinducts,axiom,
    ! [Less: message_p_v > message_p_v > $o,X12: list_message_p_v,X23: list_message_p_v,P: list_message_p_v > list_message_p_v > $o] :
      ( ( lexord2101627499ge_p_v @ Less @ X12 @ X23 )
     => ( ! [X_1: list_message_p_v] : ( P @ nil_message_p_v @ X_1 )
       => ( ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v,Ys3: list_message_p_v] :
              ( ( Less @ X @ Y3 )
             => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) )
         => ( ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v,Ys3: list_message_p_v] :
                ( ~ ( Less @ X @ Y3 )
               => ( ~ ( Less @ Y3 @ X )
                 => ( ( lexord2101627499ge_p_v @ Less @ Xs2 @ Ys3 )
                   => ( ( P @ Xs2 @ Ys3 )
                     => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) ) ) )
           => ( P @ X12 @ X23 ) ) ) ) ) ).

% ord.lexordp_eq.inducts
thf(fact_203_ord_Olexordp__eq_Osimps,axiom,
    ( lexord1758866263t_unit
    = ( ^ [Less2: config256849571t_unit > config256849571t_unit > $o,A12: list_c1059388851t_unit,A22: list_c1059388851t_unit] :
          ( ? [Ys: list_c1059388851t_unit] :
              ( ( A12 = nil_co1338500125t_unit )
              & ( A22 = Ys ) )
          | ? [X4: config256849571t_unit,Y2: config256849571t_unit,Xs3: list_c1059388851t_unit,Ys: list_c1059388851t_unit] :
              ( ( A12
                = ( cons_c1162654829t_unit @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
              & ( Less2 @ X4 @ Y2 ) )
          | ? [X4: config256849571t_unit,Y2: config256849571t_unit,Xs3: list_c1059388851t_unit,Ys: list_c1059388851t_unit] :
              ( ( A12
                = ( cons_c1162654829t_unit @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
              & ~ ( Less2 @ X4 @ Y2 )
              & ~ ( Less2 @ Y2 @ X4 )
              & ( lexord1758866263t_unit @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).

% ord.lexordp_eq.simps
thf(fact_204_ord_Olexordp__eq_Osimps,axiom,
    ( lexord2101627499ge_p_v
    = ( ^ [Less2: message_p_v > message_p_v > $o,A12: list_message_p_v,A22: list_message_p_v] :
          ( ? [Ys: list_message_p_v] :
              ( ( A12 = nil_message_p_v )
              & ( A22 = Ys ) )
          | ? [X4: message_p_v,Y2: message_p_v,Xs3: list_message_p_v,Ys: list_message_p_v] :
              ( ( A12
                = ( cons_message_p_v @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_message_p_v @ Y2 @ Ys ) )
              & ( Less2 @ X4 @ Y2 ) )
          | ? [X4: message_p_v,Y2: message_p_v,Xs3: list_message_p_v,Ys: list_message_p_v] :
              ( ( A12
                = ( cons_message_p_v @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_message_p_v @ Y2 @ Ys ) )
              & ~ ( Less2 @ X4 @ Y2 )
              & ~ ( Less2 @ Y2 @ X4 )
              & ( lexord2101627499ge_p_v @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).

% ord.lexordp_eq.simps
thf(fact_205_ord_Olexordp__eq_Ocases,axiom,
    ! [Less: config256849571t_unit > config256849571t_unit > $o,A1: list_c1059388851t_unit,A2: list_c1059388851t_unit] :
      ( ( lexord1758866263t_unit @ Less @ A1 @ A2 )
     => ( ( A1 != nil_co1338500125t_unit )
       => ( ! [X: config256849571t_unit] :
              ( ? [Xs2: list_c1059388851t_unit] :
                  ( A1
                  = ( cons_c1162654829t_unit @ X @ Xs2 ) )
             => ! [Y3: config256849571t_unit] :
                  ( ? [Ys3: list_c1059388851t_unit] :
                      ( A2
                      = ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
                 => ~ ( Less @ X @ Y3 ) ) )
         => ~ ! [X: config256849571t_unit,Y3: config256849571t_unit,Xs2: list_c1059388851t_unit] :
                ( ( A1
                  = ( cons_c1162654829t_unit @ X @ Xs2 ) )
               => ! [Ys3: list_c1059388851t_unit] :
                    ( ( A2
                      = ( cons_c1162654829t_unit @ Y3 @ Ys3 ) )
                   => ( ~ ( Less @ X @ Y3 )
                     => ( ~ ( Less @ Y3 @ X )
                       => ~ ( lexord1758866263t_unit @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).

% ord.lexordp_eq.cases
thf(fact_206_ord_Olexordp__eq_Ocases,axiom,
    ! [Less: message_p_v > message_p_v > $o,A1: list_message_p_v,A2: list_message_p_v] :
      ( ( lexord2101627499ge_p_v @ Less @ A1 @ A2 )
     => ( ( A1 != nil_message_p_v )
       => ( ! [X: message_p_v] :
              ( ? [Xs2: list_message_p_v] :
                  ( A1
                  = ( cons_message_p_v @ X @ Xs2 ) )
             => ! [Y3: message_p_v] :
                  ( ? [Ys3: list_message_p_v] :
                      ( A2
                      = ( cons_message_p_v @ Y3 @ Ys3 ) )
                 => ~ ( Less @ X @ Y3 ) ) )
         => ~ ! [X: message_p_v,Y3: message_p_v,Xs2: list_message_p_v] :
                ( ( A1
                  = ( cons_message_p_v @ X @ Xs2 ) )
               => ! [Ys3: list_message_p_v] :
                    ( ( A2
                      = ( cons_message_p_v @ Y3 @ Ys3 ) )
                   => ( ~ ( Less @ X @ Y3 )
                     => ( ~ ( Less @ Y3 @ X )
                       => ~ ( lexord2101627499ge_p_v @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).

% ord.lexordp_eq.cases
thf(fact_207_zero__natural_Orsp,axiom,
    zero_zero_nat = zero_zero_nat ).

% zero_natural.rsp
thf(fact_208_member__rec_I2_J,axiom,
    ! [Y: config256849571t_unit] :
      ~ ( member1087090632t_unit @ nil_co1338500125t_unit @ Y ) ).

% member_rec(2)
thf(fact_209_member__rec_I2_J,axiom,
    ! [Y: message_p_v] :
      ~ ( member_message_p_v @ nil_message_p_v @ Y ) ).

% member_rec(2)
thf(fact_210_member__rec_I1_J,axiom,
    ! [X3: config256849571t_unit,Xs: list_c1059388851t_unit,Y: config256849571t_unit] :
      ( ( member1087090632t_unit @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ Y )
      = ( ( X3 = Y )
        | ( member1087090632t_unit @ Xs @ Y ) ) ) ).

% member_rec(1)
thf(fact_211_member__rec_I1_J,axiom,
    ! [X3: message_p_v,Xs: list_message_p_v,Y: message_p_v] :
      ( ( member_message_p_v @ ( cons_message_p_v @ X3 @ Xs ) @ Y )
      = ( ( X3 = Y )
        | ( member_message_p_v @ Xs @ Y ) ) ) ).

% member_rec(1)
thf(fact_212_lexordp__eq_Ocases,axiom,
    ! [A1: list_nat,A2: list_nat] :
      ( ( ord_lexordp_eq_nat @ A1 @ A2 )
     => ( ( A1 != nil_nat )
       => ( ! [X: nat] :
              ( ? [Xs2: list_nat] :
                  ( A1
                  = ( cons_nat @ X @ Xs2 ) )
             => ! [Y3: nat] :
                  ( ? [Ys3: list_nat] :
                      ( A2
                      = ( cons_nat @ Y3 @ Ys3 ) )
                 => ~ ( ord_less_nat @ X @ Y3 ) ) )
         => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
                ( ( A1
                  = ( cons_nat @ X @ Xs2 ) )
               => ! [Ys3: list_nat] :
                    ( ( A2
                      = ( cons_nat @ Y3 @ Ys3 ) )
                   => ( ~ ( ord_less_nat @ X @ Y3 )
                     => ( ~ ( ord_less_nat @ Y3 @ X )
                       => ~ ( ord_lexordp_eq_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).

% lexordp_eq.cases
thf(fact_213_lexordp__eq_Osimps,axiom,
    ( ord_lexordp_eq_nat
    = ( ^ [A12: list_nat,A22: list_nat] :
          ( ? [Ys: list_nat] :
              ( ( A12 = nil_nat )
              & ( A22 = Ys ) )
          | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
              ( ( A12
                = ( cons_nat @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_nat @ Y2 @ Ys ) )
              & ( ord_less_nat @ X4 @ Y2 ) )
          | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
              ( ( A12
                = ( cons_nat @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_nat @ Y2 @ Ys ) )
              & ~ ( ord_less_nat @ X4 @ Y2 )
              & ~ ( ord_less_nat @ Y2 @ X4 )
              & ( ord_lexordp_eq_nat @ Xs3 @ Ys ) ) ) ) ) ).

% lexordp_eq.simps
thf(fact_214_lexordp__eq_Oinducts,axiom,
    ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
      ( ( ord_lexordp_eq_nat @ X12 @ X23 )
     => ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
       => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
         => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
                ( ~ ( ord_less_nat @ X @ Y3 )
               => ( ~ ( ord_less_nat @ Y3 @ X )
                 => ( ( ord_lexordp_eq_nat @ Xs2 @ Ys3 )
                   => ( ( P @ Xs2 @ Ys3 )
                     => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
           => ( P @ X12 @ X23 ) ) ) ) ) ).

% lexordp_eq.inducts
thf(fact_215_splice_Oelims,axiom,
    ! [X3: list_c1059388851t_unit,Xa: list_c1059388851t_unit,Y: list_c1059388851t_unit] :
      ( ( ( splice888123018t_unit @ X3 @ Xa )
        = Y )
     => ( ( ( X3 = nil_co1338500125t_unit )
         => ( Y != Xa ) )
       => ~ ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit] :
              ( ( X3
                = ( cons_c1162654829t_unit @ X @ Xs2 ) )
             => ( Y
               != ( cons_c1162654829t_unit @ X @ ( splice888123018t_unit @ Xa @ Xs2 ) ) ) ) ) ) ).

% splice.elims
thf(fact_216_splice_Oelims,axiom,
    ! [X3: list_message_p_v,Xa: list_message_p_v,Y: list_message_p_v] :
      ( ( ( splice_message_p_v @ X3 @ Xa )
        = Y )
     => ( ( ( X3 = nil_message_p_v )
         => ( Y != Xa ) )
       => ~ ! [X: message_p_v,Xs2: list_message_p_v] :
              ( ( X3
                = ( cons_message_p_v @ X @ Xs2 ) )
             => ( Y
               != ( cons_message_p_v @ X @ ( splice_message_p_v @ Xa @ Xs2 ) ) ) ) ) ) ).

% splice.elims
thf(fact_217_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A8: nat] :
      ( ( A8 != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A8 ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_218_less__nat__zero__code,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_219_neq0__conv,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N2 ) ) ).

% neq0_conv
thf(fact_220_lessI,axiom,
    ! [N2: nat] : ( ord_less_nat @ N2 @ ( suc @ N2 ) ) ).

% lessI
thf(fact_221_Suc__mono,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N2 ) ) ) ).

% Suc_mono
thf(fact_222_Suc__less__eq,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N2 ) )
      = ( ord_less_nat @ M2 @ N2 ) ) ).

% Suc_less_eq
thf(fact_223_not__gr__zero,axiom,
    ! [N2: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
      = ( N2 = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_224_zero__less__Suc,axiom,
    ! [N2: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N2 ) ) ).

% zero_less_Suc
thf(fact_225_less__Suc0,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ N2 @ ( suc @ zero_zero_nat ) )
      = ( N2 = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_226_split__Nil__iff,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ( ( splice888123018t_unit @ Xs @ Ys2 )
        = nil_co1338500125t_unit )
      = ( ( Xs = nil_co1338500125t_unit )
        & ( Ys2 = nil_co1338500125t_unit ) ) ) ).

% split_Nil_iff
thf(fact_227_split__Nil__iff,axiom,
    ! [Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ( ( splice_message_p_v @ Xs @ Ys2 )
        = nil_message_p_v )
      = ( ( Xs = nil_message_p_v )
        & ( Ys2 = nil_message_p_v ) ) ) ).

% split_Nil_iff
thf(fact_228_splice__Nil2,axiom,
    ! [Xs: list_c1059388851t_unit] :
      ( ( splice888123018t_unit @ Xs @ nil_co1338500125t_unit )
      = Xs ) ).

% splice_Nil2
thf(fact_229_splice__Nil2,axiom,
    ! [Xs: list_message_p_v] :
      ( ( splice_message_p_v @ Xs @ nil_message_p_v )
      = Xs ) ).

% splice_Nil2
thf(fact_230_lexordp__eq__simps_I4_J,axiom,
    ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
      ( ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
      = ( ( ord_less_nat @ X3 @ Y )
        | ( ~ ( ord_less_nat @ Y @ X3 )
          & ( ord_lexordp_eq_nat @ Xs @ Ys2 ) ) ) ) ).

% lexordp_eq_simps(4)
thf(fact_231_gr__zeroI,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N2 ) ) ).

% gr_zeroI
thf(fact_232_not__less__zero,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ zero_zero_nat ) ).

% not_less_zero
thf(fact_233_gr__implies__not__zero,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( N2 != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_234_zero__less__iff__neq__zero,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
      = ( N2 != zero_zero_nat ) ) ).

% zero_less_iff_neq_zero
thf(fact_235_bot__nat__0_Oextremum__strict,axiom,
    ! [A8: nat] :
      ~ ( ord_less_nat @ A8 @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_236_infinite__descent0,axiom,
    ! [P: nat > $o,N2: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N )
           => ( ~ ( P @ N )
             => ? [M3: nat] :
                  ( ( ord_less_nat @ M3 @ N )
                  & ~ ( P @ M3 ) ) ) )
       => ( P @ N2 ) ) ) ).

% infinite_descent0
thf(fact_237_gr__implies__not0,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( N2 != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_238_less__zeroE,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ zero_zero_nat ) ).

% less_zeroE
thf(fact_239_not__less0,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ zero_zero_nat ) ).

% not_less0
thf(fact_240_not__gr0,axiom,
    ! [N2: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N2 ) )
      = ( N2 = zero_zero_nat ) ) ).

% not_gr0
thf(fact_241_gr0I,axiom,
    ! [N2: nat] :
      ( ( N2 != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N2 ) ) ).

% gr0I
thf(fact_242_Nat_OlessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ I @ K )
     => ( ( K
         != ( suc @ I ) )
       => ~ ! [J: nat] :
              ( ( ord_less_nat @ I @ J )
             => ( K
               != ( suc @ J ) ) ) ) ) ).

% Nat.lessE
thf(fact_243_Suc__lessD,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ N2 )
     => ( ord_less_nat @ M2 @ N2 ) ) ).

% Suc_lessD
thf(fact_244_Suc__lessE,axiom,
    ! [I: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I ) @ K )
     => ~ ! [J: nat] :
            ( ( ord_less_nat @ I @ J )
           => ( K
             != ( suc @ J ) ) ) ) ).

% Suc_lessE
thf(fact_245_Suc__lessI,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( ( ( suc @ M2 )
         != N2 )
       => ( ord_less_nat @ ( suc @ M2 ) @ N2 ) ) ) ).

% Suc_lessI
thf(fact_246_less__SucE,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N2 ) )
     => ( ~ ( ord_less_nat @ M2 @ N2 )
       => ( M2 = N2 ) ) ) ).

% less_SucE
thf(fact_247_less__SucI,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( ord_less_nat @ M2 @ ( suc @ N2 ) ) ) ).

% less_SucI
thf(fact_248_Ex__less__Suc,axiom,
    ! [N2: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N2 ) )
            & ( P @ I2 ) ) )
      = ( ( P @ N2 )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N2 )
            & ( P @ I2 ) ) ) ) ).

% Ex_less_Suc
thf(fact_249_less__Suc__eq,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N2 ) )
      = ( ( ord_less_nat @ M2 @ N2 )
        | ( M2 = N2 ) ) ) ).

% less_Suc_eq
thf(fact_250_not__less__eq,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ~ ( ord_less_nat @ M2 @ N2 ) )
      = ( ord_less_nat @ N2 @ ( suc @ M2 ) ) ) ).

% not_less_eq
thf(fact_251_All__less__Suc,axiom,
    ! [N2: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N2 ) )
           => ( P @ I2 ) ) )
      = ( ( P @ N2 )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N2 )
           => ( P @ I2 ) ) ) ) ).

% All_less_Suc
thf(fact_252_Suc__less__eq2,axiom,
    ! [N2: nat,M2: nat] :
      ( ( ord_less_nat @ ( suc @ N2 ) @ M2 )
      = ( ? [M4: nat] :
            ( ( M2
              = ( suc @ M4 ) )
            & ( ord_less_nat @ N2 @ M4 ) ) ) ) ).

% Suc_less_eq2
thf(fact_253_less__antisym,axiom,
    ! [N2: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N2 @ M2 )
     => ( ( ord_less_nat @ N2 @ ( suc @ M2 ) )
       => ( M2 = N2 ) ) ) ).

% less_antisym
thf(fact_254_Suc__less__SucD,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N2 ) )
     => ( ord_less_nat @ M2 @ N2 ) ) ).

% Suc_less_SucD
thf(fact_255_less__trans__Suc,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ( ord_less_nat @ J2 @ K )
       => ( ord_less_nat @ ( suc @ I ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_256_less__Suc__induct,axiom,
    ! [I: nat,J2: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
       => ( ! [I3: nat,J: nat,K2: nat] :
              ( ( ord_less_nat @ I3 @ J )
             => ( ( ord_less_nat @ J @ K2 )
               => ( ( P @ I3 @ J )
                 => ( ( P @ J @ K2 )
                   => ( P @ I3 @ K2 ) ) ) ) )
         => ( P @ I @ J2 ) ) ) ) ).

% less_Suc_induct
thf(fact_257_strict__inc__induct,axiom,
    ! [I: nat,J2: nat,P: nat > $o] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ! [I3: nat] :
            ( ( J2
              = ( suc @ I3 ) )
           => ( P @ I3 ) )
       => ( ! [I3: nat] :
              ( ( ord_less_nat @ I3 @ J2 )
             => ( ( P @ ( suc @ I3 ) )
               => ( P @ I3 ) ) )
         => ( P @ I ) ) ) ) ).

% strict_inc_induct
thf(fact_258_not__less__less__Suc__eq,axiom,
    ! [N2: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N2 @ M2 )
     => ( ( ord_less_nat @ N2 @ ( suc @ M2 ) )
        = ( N2 = M2 ) ) ) ).

% not_less_less_Suc_eq
thf(fact_259_lift__Suc__mono__less,axiom,
    ! [F2: nat > nat,N2: nat,N3: nat] :
      ( ! [N: nat] : ( ord_less_nat @ ( F2 @ N ) @ ( F2 @ ( suc @ N ) ) )
     => ( ( ord_less_nat @ N2 @ N3 )
       => ( ord_less_nat @ ( F2 @ N2 ) @ ( F2 @ N3 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_260_lift__Suc__mono__less__iff,axiom,
    ! [F2: nat > nat,N2: nat,M2: nat] :
      ( ! [N: nat] : ( ord_less_nat @ ( F2 @ N ) @ ( F2 @ ( suc @ N ) ) )
     => ( ( ord_less_nat @ ( F2 @ N2 ) @ ( F2 @ M2 ) )
        = ( ord_less_nat @ N2 @ M2 ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_261_splice_Osimps_I2_J,axiom,
    ! [X3: config256849571t_unit,Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit] :
      ( ( splice888123018t_unit @ ( cons_c1162654829t_unit @ X3 @ Xs ) @ Ys2 )
      = ( cons_c1162654829t_unit @ X3 @ ( splice888123018t_unit @ Ys2 @ Xs ) ) ) ).

% splice.simps(2)
thf(fact_262_splice_Osimps_I2_J,axiom,
    ! [X3: message_p_v,Xs: list_message_p_v,Ys2: list_message_p_v] :
      ( ( splice_message_p_v @ ( cons_message_p_v @ X3 @ Xs ) @ Ys2 )
      = ( cons_message_p_v @ X3 @ ( splice_message_p_v @ Ys2 @ Xs ) ) ) ).

% splice.simps(2)
thf(fact_263_splice_Osimps_I1_J,axiom,
    ! [Ys2: list_c1059388851t_unit] :
      ( ( splice888123018t_unit @ nil_co1338500125t_unit @ Ys2 )
      = Ys2 ) ).

% splice.simps(1)
thf(fact_264_splice_Osimps_I1_J,axiom,
    ! [Ys2: list_message_p_v] :
      ( ( splice_message_p_v @ nil_message_p_v @ Ys2 )
      = Ys2 ) ).

% splice.simps(1)
thf(fact_265_less__Suc__eq__0__disj,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N2 ) )
      = ( ( M2 = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M2
              = ( suc @ J3 ) )
            & ( ord_less_nat @ J3 @ N2 ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_266_gr0__implies__Suc,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ? [M: nat] :
          ( N2
          = ( suc @ M ) ) ) ).

% gr0_implies_Suc
thf(fact_267_All__less__Suc2,axiom,
    ! [N2: nat,P: nat > $o] :
      ( ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N2 ) )
           => ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ N2 )
           => ( P @ ( suc @ I2 ) ) ) ) ) ).

% All_less_Suc2
thf(fact_268_gr0__conv__Suc,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
      = ( ? [M5: nat] :
            ( N2
            = ( suc @ M5 ) ) ) ) ).

% gr0_conv_Suc
thf(fact_269_Ex__less__Suc2,axiom,
    ! [N2: nat,P: nat > $o] :
      ( ( ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ ( suc @ N2 ) )
            & ( P @ I2 ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I2: nat] :
            ( ( ord_less_nat @ I2 @ N2 )
            & ( P @ ( suc @ I2 ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_270_lexordp__eq_OCons__eq,axiom,
    ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
      ( ~ ( ord_less_nat @ X3 @ Y )
     => ( ~ ( ord_less_nat @ Y @ X3 )
       => ( ( ord_lexordp_eq_nat @ Xs @ Ys2 )
         => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).

% lexordp_eq.Cons_eq
thf(fact_271_lexordp__eq_OCons,axiom,
    ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).

% lexordp_eq.Cons
thf(fact_272_NatPredicateTippingPoint,axiom,
    ! [N22: nat,Pr: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N22 )
     => ( ( Pr @ zero_zero_nat )
       => ( ~ ( Pr @ N22 )
         => ? [N: nat] :
              ( ( ord_less_nat @ N @ N22 )
              & ( Pr @ N )
              & ~ ( Pr @ ( suc @ N ) ) ) ) ) ) ).

% NatPredicateTippingPoint
thf(fact_273_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_274_lexordp_Ocases,axiom,
    ! [A1: list_nat,A2: list_nat] :
      ( ( ord_lexordp_nat @ A1 @ A2 )
     => ( ( ( A1 = nil_nat )
         => ! [Y3: nat,Ys3: list_nat] :
              ( A2
             != ( cons_nat @ Y3 @ Ys3 ) ) )
       => ( ! [X: nat] :
              ( ? [Xs2: list_nat] :
                  ( A1
                  = ( cons_nat @ X @ Xs2 ) )
             => ! [Y3: nat] :
                  ( ? [Ys3: list_nat] :
                      ( A2
                      = ( cons_nat @ Y3 @ Ys3 ) )
                 => ~ ( ord_less_nat @ X @ Y3 ) ) )
         => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
                ( ( A1
                  = ( cons_nat @ X @ Xs2 ) )
               => ! [Ys3: list_nat] :
                    ( ( A2
                      = ( cons_nat @ Y3 @ Ys3 ) )
                   => ( ~ ( ord_less_nat @ X @ Y3 )
                     => ( ~ ( ord_less_nat @ Y3 @ X )
                       => ~ ( ord_lexordp_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).

% lexordp.cases
thf(fact_275_lexordp_Osimps,axiom,
    ( ord_lexordp_nat
    = ( ^ [A12: list_nat,A22: list_nat] :
          ( ? [Y2: nat,Ys: list_nat] :
              ( ( A12 = nil_nat )
              & ( A22
                = ( cons_nat @ Y2 @ Ys ) ) )
          | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
              ( ( A12
                = ( cons_nat @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_nat @ Y2 @ Ys ) )
              & ( ord_less_nat @ X4 @ Y2 ) )
          | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
              ( ( A12
                = ( cons_nat @ X4 @ Xs3 ) )
              & ( A22
                = ( cons_nat @ Y2 @ Ys ) )
              & ~ ( ord_less_nat @ X4 @ Y2 )
              & ~ ( ord_less_nat @ Y2 @ X4 )
              & ( ord_lexordp_nat @ Xs3 @ Ys ) ) ) ) ) ).

% lexordp.simps
thf(fact_276_lexordp__simps_I3_J,axiom,
    ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
      ( ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
      = ( ( ord_less_nat @ X3 @ Y )
        | ( ~ ( ord_less_nat @ Y @ X3 )
          & ( ord_lexordp_nat @ Xs @ Ys2 ) ) ) ) ).

% lexordp_simps(3)
thf(fact_277_lexordp__irreflexive,axiom,
    ! [Xs: list_nat] :
      ( ! [X: nat] :
          ~ ( ord_less_nat @ X @ X )
     => ~ ( ord_lexordp_nat @ Xs @ Xs ) ) ).

% lexordp_irreflexive
thf(fact_278_linorder__neqE__nat,axiom,
    ! [X3: nat,Y: nat] :
      ( ( X3 != Y )
     => ( ~ ( ord_less_nat @ X3 @ Y )
       => ( ord_less_nat @ Y @ X3 ) ) ) ).

% linorder_neqE_nat
thf(fact_279_infinite__descent,axiom,
    ! [P: nat > $o,N2: nat] :
      ( ! [N: nat] :
          ( ~ ( P @ N )
         => ? [M3: nat] :
              ( ( ord_less_nat @ M3 @ N )
              & ~ ( P @ M3 ) ) )
     => ( P @ N2 ) ) ).

% infinite_descent
thf(fact_280_nat__less__induct,axiom,
    ! [P: nat > $o,N2: nat] :
      ( ! [N: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N )
             => ( P @ M3 ) )
         => ( P @ N ) )
     => ( P @ N2 ) ) ).

% nat_less_induct
thf(fact_281_less__irrefl__nat,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ N2 ) ).

% less_irrefl_nat
thf(fact_282_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_283_less__not__refl2,axiom,
    ! [N2: nat,M2: nat] :
      ( ( ord_less_nat @ N2 @ M2 )
     => ( M2 != N2 ) ) ).

% less_not_refl2
thf(fact_284_less__not__refl,axiom,
    ! [N2: nat] :
      ~ ( ord_less_nat @ N2 @ N2 ) ).

% less_not_refl
thf(fact_285_nat__neq__iff,axiom,
    ! [M2: nat,N2: nat] :
      ( ( M2 != N2 )
      = ( ( ord_less_nat @ M2 @ N2 )
        | ( ord_less_nat @ N2 @ M2 ) ) ) ).

% nat_neq_iff
thf(fact_286_lexordp_OCons,axiom,
    ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
      ( ( ord_less_nat @ X3 @ Y )
     => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).

% lexordp.Cons
thf(fact_287_lexordp_OCons__eq,axiom,
    ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
      ( ~ ( ord_less_nat @ X3 @ Y )
     => ( ~ ( ord_less_nat @ Y @ X3 )
       => ( ( ord_lexordp_nat @ Xs @ Ys2 )
         => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).

% lexordp.Cons_eq
thf(fact_288_lexordp__induct,axiom,
    ! [Xs: list_nat,Ys2: list_nat,P: list_nat > list_nat > $o] :
      ( ( ord_lexordp_nat @ Xs @ Ys2 )
     => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
       => ( ! [X: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
         => ( ! [X: nat,Xs2: list_nat,Ys3: list_nat] :
                ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
               => ( ( P @ Xs2 @ Ys3 )
                 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ X @ Ys3 ) ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% lexordp_induct
thf(fact_289_lexordp__cases,axiom,
    ! [Xs: list_nat,Ys2: list_nat] :
      ( ( ord_lexordp_nat @ Xs @ Ys2 )
     => ( ( ( Xs = nil_nat )
         => ! [Y3: nat,Ys4: list_nat] :
              ( Ys2
             != ( cons_nat @ Y3 @ Ys4 ) ) )
       => ( ! [X: nat] :
              ( ? [Xs4: list_nat] :
                  ( Xs
                  = ( cons_nat @ X @ Xs4 ) )
             => ! [Y3: nat] :
                  ( ? [Ys4: list_nat] :
                      ( Ys2
                      = ( cons_nat @ Y3 @ Ys4 ) )
                 => ~ ( ord_less_nat @ X @ Y3 ) ) )
         => ~ ! [X: nat,Xs4: list_nat] :
                ( ( Xs
                  = ( cons_nat @ X @ Xs4 ) )
               => ! [Ys4: list_nat] :
                    ( ( Ys2
                      = ( cons_nat @ X @ Ys4 ) )
                   => ~ ( ord_lexordp_nat @ Xs4 @ Ys4 ) ) ) ) ) ) ).

% lexordp_cases
thf(fact_290_lexordp_Oinducts,axiom,
    ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
      ( ( ord_lexordp_nat @ X12 @ X23 )
     => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
       => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
              ( ( ord_less_nat @ X @ Y3 )
             => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
         => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
                ( ~ ( ord_less_nat @ X @ Y3 )
               => ( ~ ( ord_less_nat @ Y3 @ X )
                 => ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
                   => ( ( P @ Xs2 @ Ys3 )
                     => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
           => ( P @ X12 @ X23 ) ) ) ) ) ).

% lexordp.inducts
thf(fact_291_of__nat__0__less__iff,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( semiri1382578993at_nat @ N2 ) )
      = ( ord_less_nat @ zero_zero_nat @ N2 ) ) ).

% of_nat_0_less_iff
thf(fact_292_Suc__pred,axiom,
    ! [N2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( suc @ ( minus_minus_nat @ N2 @ ( suc @ zero_zero_nat ) ) )
        = N2 ) ) ).

% Suc_pred
thf(fact_293_length__greater__0__conv,axiom,
    ! [Xs: list_c1059388851t_unit] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s1406904903t_unit @ Xs ) )
      = ( Xs != nil_co1338500125t_unit ) ) ).

% length_greater_0_conv
thf(fact_294_length__greater__0__conv,axiom,
    ! [Xs: list_message_p_v] :
      ( ( ord_less_nat @ zero_zero_nat @ ( size_s1168481041ge_p_v @ Xs ) )
      = ( Xs != nil_message_p_v ) ) ).

% length_greater_0_conv
thf(fact_295_zero__diff,axiom,
    ! [A8: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A8 )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_296_diff__zero,axiom,
    ! [A8: nat] :
      ( ( minus_minus_nat @ A8 @ zero_zero_nat )
      = A8 ) ).

% diff_zero
thf(fact_297_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A8: nat] :
      ( ( minus_minus_nat @ A8 @ A8 )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_298_diff__0__eq__0,axiom,
    ! [N2: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N2 )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_299_diff__self__eq__0,axiom,
    ! [M2: nat] :
      ( ( minus_minus_nat @ M2 @ M2 )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_300_Suc__diff__diff,axiom,
    ! [M2: nat,N2: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M2 ) @ N2 ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M2 @ N2 ) @ K ) ) ).

% Suc_diff_diff
thf(fact_301_diff__Suc__Suc,axiom,
    ! [M2: nat,N2: nat] :
      ( ( minus_minus_nat @ ( suc @ M2 ) @ ( suc @ N2 ) )
      = ( minus_minus_nat @ M2 @ N2 ) ) ).

% diff_Suc_Suc
thf(fact_302_of__nat__eq__0__iff,axiom,
    ! [M2: nat] :
      ( ( ( semiri1382578993at_nat @ M2 )
        = zero_zero_nat )
      = ( M2 = zero_zero_nat ) ) ).

% of_nat_eq_0_iff
thf(fact_303_of__nat__0__eq__iff,axiom,
    ! [N2: nat] :
      ( ( zero_zero_nat
        = ( semiri1382578993at_nat @ N2 ) )
      = ( zero_zero_nat = N2 ) ) ).

% of_nat_0_eq_iff
thf(fact_304_of__nat__0,axiom,
    ( ( semiri1382578993at_nat @ zero_zero_nat )
    = zero_zero_nat ) ).

% of_nat_0
thf(fact_305_of__nat__less__iff,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ ( semiri1382578993at_nat @ M2 ) @ ( semiri1382578993at_nat @ N2 ) )
      = ( ord_less_nat @ M2 @ N2 ) ) ).

% of_nat_less_iff
thf(fact_306_length__0__conv,axiom,
    ! [Xs: list_c1059388851t_unit] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_co1338500125t_unit ) ) ).

% length_0_conv
thf(fact_307_length__0__conv,axiom,
    ! [Xs: list_message_p_v] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_message_p_v ) ) ).

% length_0_conv
thf(fact_308_zero__less__diff,axiom,
    ! [N2: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N2 @ M2 ) )
      = ( ord_less_nat @ M2 @ N2 ) ) ).

% zero_less_diff
thf(fact_309_diff__less,axiom,
    ! [N2: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N2 )
     => ( ( ord_less_nat @ zero_zero_nat @ M2 )
       => ( ord_less_nat @ ( minus_minus_nat @ M2 @ N2 ) @ M2 ) ) ) ).

% diff_less
thf(fact_310_of__nat__less__imp__less,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ ( semiri1382578993at_nat @ M2 ) @ ( semiri1382578993at_nat @ N2 ) )
     => ( ord_less_nat @ M2 @ N2 ) ) ).

% of_nat_less_imp_less
thf(fact_311_less__imp__of__nat__less,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( ord_less_nat @ ( semiri1382578993at_nat @ M2 ) @ ( semiri1382578993at_nat @ N2 ) ) ) ).

% less_imp_of_nat_less
thf(fact_312_less__imp__diff__less,axiom,
    ! [J2: nat,K: nat,N2: nat] :
      ( ( ord_less_nat @ J2 @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J2 @ N2 ) @ K ) ) ).

% less_imp_diff_less
thf(fact_313_diff__less__mono2,axiom,
    ! [M2: nat,N2: nat,L: nat] :
      ( ( ord_less_nat @ M2 @ N2 )
     => ( ( ord_less_nat @ M2 @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N2 ) @ ( minus_minus_nat @ L @ M2 ) ) ) ) ).

% diff_less_mono2
thf(fact_314_Suc__diff__Suc,axiom,
    ! [N2: nat,M2: nat] :
      ( ( ord_less_nat @ N2 @ M2 )
     => ( ( suc @ ( minus_minus_nat @ M2 @ ( suc @ N2 ) ) )
        = ( minus_minus_nat @ M2 @ N2 ) ) ) ).

% Suc_diff_Suc
thf(fact_315_diff__less__Suc,axiom,
    ! [M2: nat,N2: nat] : ( ord_less_nat @ ( minus_minus_nat @ M2 @ N2 ) @ ( suc @ M2 ) ) ).

% diff_less_Suc
thf(fact_316_of__nat__less__0__iff,axiom,
    ! [M2: nat] :
      ~ ( ord_less_nat @ ( semiri1382578993at_nat @ M2 ) @ zero_zero_nat ) ).

% of_nat_less_0_iff
thf(fact_317_of__nat__neq__0,axiom,
    ! [N2: nat] :
      ( ( semiri1382578993at_nat @ ( suc @ N2 ) )
     != zero_zero_nat ) ).

% of_nat_neq_0
thf(fact_318_length__Suc__conv,axiom,
    ! [Xs: list_c1059388851t_unit,N2: nat] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( suc @ N2 ) )
      = ( ? [Y2: config256849571t_unit,Ys: list_c1059388851t_unit] :
            ( ( Xs
              = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
            & ( ( size_s1406904903t_unit @ Ys )
              = N2 ) ) ) ) ).

% length_Suc_conv
thf(fact_319_length__Suc__conv,axiom,
    ! [Xs: list_message_p_v,N2: nat] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( suc @ N2 ) )
      = ( ? [Y2: message_p_v,Ys: list_message_p_v] :
            ( ( Xs
              = ( cons_message_p_v @ Y2 @ Ys ) )
            & ( ( size_s1168481041ge_p_v @ Ys )
              = N2 ) ) ) ) ).

% length_Suc_conv
thf(fact_320_Suc__length__conv,axiom,
    ! [N2: nat,Xs: list_c1059388851t_unit] :
      ( ( ( suc @ N2 )
        = ( size_s1406904903t_unit @ Xs ) )
      = ( ? [Y2: config256849571t_unit,Ys: list_c1059388851t_unit] :
            ( ( Xs
              = ( cons_c1162654829t_unit @ Y2 @ Ys ) )
            & ( ( size_s1406904903t_unit @ Ys )
              = N2 ) ) ) ) ).

% Suc_length_conv
thf(fact_321_Suc__length__conv,axiom,
    ! [N2: nat,Xs: list_message_p_v] :
      ( ( ( suc @ N2 )
        = ( size_s1168481041ge_p_v @ Xs ) )
      = ( ? [Y2: message_p_v,Ys: list_message_p_v] :
            ( ( Xs
              = ( cons_message_p_v @ Y2 @ Ys ) )
            & ( ( size_s1168481041ge_p_v @ Ys )
              = N2 ) ) ) ) ).

% Suc_length_conv
thf(fact_322_list_Osize_I3_J,axiom,
    ( ( size_s1406904903t_unit @ nil_co1338500125t_unit )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_323_list_Osize_I3_J,axiom,
    ( ( size_s1168481041ge_p_v @ nil_message_p_v )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_324_list__induct2,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit,P: list_c1059388851t_unit > list_c1059388851t_unit > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( P @ nil_co1338500125t_unit @ nil_co1338500125t_unit )
       => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] :
              ( ( ( size_s1406904903t_unit @ Xs2 )
                = ( size_s1406904903t_unit @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_325_list__induct2,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_message_p_v,P: list_c1059388851t_unit > list_message_p_v > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( P @ nil_co1338500125t_unit @ nil_message_p_v )
       => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: message_p_v,Ys3: list_message_p_v] :
              ( ( ( size_s1406904903t_unit @ Xs2 )
                = ( size_s1168481041ge_p_v @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_326_list__induct2,axiom,
    ! [Xs: list_message_p_v,Ys2: list_c1059388851t_unit,P: list_message_p_v > list_c1059388851t_unit > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( P @ nil_message_p_v @ nil_co1338500125t_unit )
       => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit] :
              ( ( ( size_s1168481041ge_p_v @ Xs2 )
                = ( size_s1406904903t_unit @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_327_list__induct2,axiom,
    ! [Xs: list_message_p_v,Ys2: list_message_p_v,P: list_message_p_v > list_message_p_v > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( P @ nil_message_p_v @ nil_message_p_v )
       => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: message_p_v,Ys3: list_message_p_v] :
              ( ( ( size_s1168481041ge_p_v @ Xs2 )
                = ( size_s1168481041ge_p_v @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_328_list__induct3,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit,Zs2: list_c1059388851t_unit,P: list_c1059388851t_unit > list_c1059388851t_unit > list_c1059388851t_unit > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( ( size_s1406904903t_unit @ Ys2 )
          = ( size_s1406904903t_unit @ Zs2 ) )
       => ( ( P @ nil_co1338500125t_unit @ nil_co1338500125t_unit @ nil_co1338500125t_unit )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit,Z: config256849571t_unit,Zs: list_c1059388851t_unit] :
                ( ( ( size_s1406904903t_unit @ Xs2 )
                  = ( size_s1406904903t_unit @ Ys3 ) )
               => ( ( ( size_s1406904903t_unit @ Ys3 )
                    = ( size_s1406904903t_unit @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) @ ( cons_c1162654829t_unit @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_329_list__induct3,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_c1059388851t_unit,Zs2: list_message_p_v,P: list_c1059388851t_unit > list_c1059388851t_unit > list_message_p_v > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( ( size_s1406904903t_unit @ Ys2 )
          = ( size_s1168481041ge_p_v @ Zs2 ) )
       => ( ( P @ nil_co1338500125t_unit @ nil_co1338500125t_unit @ nil_message_p_v )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit,Z: message_p_v,Zs: list_message_p_v] :
                ( ( ( size_s1406904903t_unit @ Xs2 )
                  = ( size_s1406904903t_unit @ Ys3 ) )
               => ( ( ( size_s1406904903t_unit @ Ys3 )
                    = ( size_s1168481041ge_p_v @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) @ ( cons_message_p_v @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_330_list__induct3,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_message_p_v,Zs2: list_c1059388851t_unit,P: list_c1059388851t_unit > list_message_p_v > list_c1059388851t_unit > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( ( size_s1168481041ge_p_v @ Ys2 )
          = ( size_s1406904903t_unit @ Zs2 ) )
       => ( ( P @ nil_co1338500125t_unit @ nil_message_p_v @ nil_co1338500125t_unit )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: message_p_v,Ys3: list_message_p_v,Z: config256849571t_unit,Zs: list_c1059388851t_unit] :
                ( ( ( size_s1406904903t_unit @ Xs2 )
                  = ( size_s1168481041ge_p_v @ Ys3 ) )
               => ( ( ( size_s1168481041ge_p_v @ Ys3 )
                    = ( size_s1406904903t_unit @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) @ ( cons_c1162654829t_unit @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_331_list__induct3,axiom,
    ! [Xs: list_c1059388851t_unit,Ys2: list_message_p_v,Zs2: list_message_p_v,P: list_c1059388851t_unit > list_message_p_v > list_message_p_v > $o] :
      ( ( ( size_s1406904903t_unit @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( ( size_s1168481041ge_p_v @ Ys2 )
          = ( size_s1168481041ge_p_v @ Zs2 ) )
       => ( ( P @ nil_co1338500125t_unit @ nil_message_p_v @ nil_message_p_v )
         => ( ! [X: config256849571t_unit,Xs2: list_c1059388851t_unit,Y3: message_p_v,Ys3: list_message_p_v,Z: message_p_v,Zs: list_message_p_v] :
                ( ( ( size_s1406904903t_unit @ Xs2 )
                  = ( size_s1168481041ge_p_v @ Ys3 ) )
               => ( ( ( size_s1168481041ge_p_v @ Ys3 )
                    = ( size_s1168481041ge_p_v @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_c1162654829t_unit @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) @ ( cons_message_p_v @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_332_list__induct3,axiom,
    ! [Xs: list_message_p_v,Ys2: list_c1059388851t_unit,Zs2: list_c1059388851t_unit,P: list_message_p_v > list_c1059388851t_unit > list_c1059388851t_unit > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( ( size_s1406904903t_unit @ Ys2 )
          = ( size_s1406904903t_unit @ Zs2 ) )
       => ( ( P @ nil_message_p_v @ nil_co1338500125t_unit @ nil_co1338500125t_unit )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit,Z: config256849571t_unit,Zs: list_c1059388851t_unit] :
                ( ( ( size_s1168481041ge_p_v @ Xs2 )
                  = ( size_s1406904903t_unit @ Ys3 ) )
               => ( ( ( size_s1406904903t_unit @ Ys3 )
                    = ( size_s1406904903t_unit @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) @ ( cons_c1162654829t_unit @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_333_list__induct3,axiom,
    ! [Xs: list_message_p_v,Ys2: list_c1059388851t_unit,Zs2: list_message_p_v,P: list_message_p_v > list_c1059388851t_unit > list_message_p_v > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1406904903t_unit @ Ys2 ) )
     => ( ( ( size_s1406904903t_unit @ Ys2 )
          = ( size_s1168481041ge_p_v @ Zs2 ) )
       => ( ( P @ nil_message_p_v @ nil_co1338500125t_unit @ nil_message_p_v )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: config256849571t_unit,Ys3: list_c1059388851t_unit,Z: message_p_v,Zs: list_message_p_v] :
                ( ( ( size_s1168481041ge_p_v @ Xs2 )
                  = ( size_s1406904903t_unit @ Ys3 ) )
               => ( ( ( size_s1406904903t_unit @ Ys3 )
                    = ( size_s1168481041ge_p_v @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_c1162654829t_unit @ Y3 @ Ys3 ) @ ( cons_message_p_v @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_334_list__induct3,axiom,
    ! [Xs: list_message_p_v,Ys2: list_message_p_v,Zs2: list_c1059388851t_unit,P: list_message_p_v > list_message_p_v > list_c1059388851t_unit > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( ( size_s1168481041ge_p_v @ Ys2 )
          = ( size_s1406904903t_unit @ Zs2 ) )
       => ( ( P @ nil_message_p_v @ nil_message_p_v @ nil_co1338500125t_unit )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: message_p_v,Ys3: list_message_p_v,Z: config256849571t_unit,Zs: list_c1059388851t_unit] :
                ( ( ( size_s1168481041ge_p_v @ Xs2 )
                  = ( size_s1168481041ge_p_v @ Ys3 ) )
               => ( ( ( size_s1168481041ge_p_v @ Ys3 )
                    = ( size_s1406904903t_unit @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) @ ( cons_c1162654829t_unit @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_335_list__induct3,axiom,
    ! [Xs: list_message_p_v,Ys2: list_message_p_v,Zs2: list_message_p_v,P: list_message_p_v > list_message_p_v > list_message_p_v > $o] :
      ( ( ( size_s1168481041ge_p_v @ Xs )
        = ( size_s1168481041ge_p_v @ Ys2 ) )
     => ( ( ( size_s1168481041ge_p_v @ Ys2 )
          = ( size_s1168481041ge_p_v @ Zs2 ) )
       => ( ( P @ nil_message_p_v @ nil_message_p_v @ nil_message_p_v )
         => ( ! [X: message_p_v,Xs2: list_message_p_v,Y3: message_p_v,Ys3: list_message_p_v,Z: message_p_v,Zs: list_message_p_v] :
                ( ( ( size_s1168481041ge_p_v @ Xs2 )
                  = ( size_s1168481041ge_p_v @ Ys3 ) )
               => ( ( ( size_s1168481041ge_p_v @ Ys3 )
                    = ( size_s1168481041ge_p_v @ Zs ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs )
                   => ( P @ ( cons_message_p_v @ X @ Xs2 ) @ ( cons_message_p_v @ Y3 @ Ys3 ) @ ( cons_message_p_v @ Z @ Zs ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_336_minus__nat_Odiff__0,axiom,
    ! [M2: nat] :
      ( ( minus_minus_nat @ M2 @ zero_zero_nat )
      = M2 ) ).

% minus_nat.diff_0
thf(fact_337_diffs0__imp__equal,axiom,
    ! [M2: nat,N2: nat] :
      ( ( ( minus_minus_nat @ M2 @ N2 )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N2 @ M2 )
          = zero_zero_nat )
       => ( M2 = N2 ) ) ) ).

% diffs0_imp_equal
thf(fact_338_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N: nat] :
            ( ( P @ ( suc @ N ) )
           => ( P @ N ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_339_diff__right__commute,axiom,
    ! [A8: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A8 @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A8 @ B ) @ C ) ) ).

% diff_right_commute
thf(fact_340_diff__commute,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J2 ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J2 ) ) ).

% diff_commute

% Conjectures (1)
thf(conj_0,conjecture,
    ( ( fe @ zero_zero_nat )
    = ( cons_c1162654829t_unit @ cfg @ nil_co1338500125t_unit ) ) ).

%------------------------------------------------------------------------------